题目
解答
利用两次循环,第一次循环判断数组中重复项的位置,第二次内部循环将重复项逐项移至数组末尾,大循环每进行一次小循环,数组长度减一,最后返回数组的长度。
class Solution {
public:
int removeDuplicates(vector<int>& nums) {
int len=nums.size();
if(len <2)
return len;
for(int i=1;i<len;)
{
if(nums[i]==nums[i-1])
{
for(int j=i;j<len-1;j++)
{
swap(nums[j],nums[j+1]);
}
len--;
}
else{i++;}
}
return len;
}
};