给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。
不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。
class Solution {
public:
int removeDuplicates(vector<int>& nums) {
std::vector<int>::iterator iter1,iter2,iter3=nums.begin();
for(iter1 = nums.begin(); iter1 != nums.end(); ++iter1)
{
bool REPIT=false;
for(iter2 = nums.begin(); iter2 != iter3; ++iter2)
{
if((*iter1)==(*iter2))
{
REPIT = true;
}
}
if(!REPIT)
{
(*iter3) = (*iter1);
++iter3;
}
}
nums.erase(iter3,nums.end());
return nums.size();
}
};