用一个变量来标识要修改的位置索引,用一个变量来表示参考数字,
遍历数组,当出现当前数字跟参考数字不同时则更新位置索引及参考数字。
c++
class Solution {
public:
int removeDuplicates(vector<int>& nums) {
int len = nums.size();
if(len==0)
return 0;
else
{
int idxToChange = 1;
int ref = nums[0];
for (int i=0;i<len;i++)
{
if (nums[i]!=ref)
{
nums[idxToChange] = nums[i];
idxToChange++;
ref = nums[i];
}
}
return idxToChange;
}
}
};