这道题就是从一个有序的数组中删除重复的元素,然后返回删除后的数组长度。这道题主要使用两个指针,一个指针指向待比较元素,另一个迭代数组,如果一样往后走,如果不一样,则把数字放到待比较元素的后一个位置。
class Solution {
public:
int removeDuplicates(vector<int>& nums) {
if(nums.empty())
return 0;
int cur = 0;
for(int i = 1; i < nums.size(); i++) {
if(nums[cur] != nums[i]) {
nums[++cur] = nums[i];
}
}
return cur+1;
}
};