原题链接
官方的双指针法,很巧妙
class Solution {
public:
int removeDuplicates(vector<int>& nums) {
if(nums.size()==0)
return 0;
sort(nums.begin(),nums.end());//快速排序
int i=0;//慢指针
int len=nums.size();
for(int j=1;j<len;j++)//j是快指针
{
if(nums[i]!=nums[j])
{
i++;
nums[i]=nums[j];
}
}
return i+1;
}
};