1. 题目
Remove Duplicates from Sorted Array
2. 算法
- 双指针:O(n)
3.代码
3.1 STL
class Solution{
public:
int removeDuplication(vector<int>& nums){
vector<int>::iterator itBegin=nums.begin();
return distance(itBegin,unique(nums.begin(),nums.end()));
}
};
3.2 双指针
class Solution{
public:
int removeDuplication(vector<int>& nums){
if(n<=1) return n;
int pre=0,int cur=0;
while(cur<n){
if(nums[pre]=nums[cur]) cur++;
else nums[++pre]=nums[cur++];
}
return pre+1;
}
};