int removeDuplicates(vector<int> &nums) {
// write your code here
unordered_map<int,int> m;
vector<int>::iterator it=nums.begin();
for(int i=0;i<nums.size();i++,it++)
{
if(m.count(nums[i]))
{
if(m[nums[i]]==1)
{
nums.erase(it);
it--;
i--;
}
else
{
m[nums[i]]++;
}
}
else
{
m[nums[i]]=1;
}
}
return nums.size();
}
注意:最多允许几个重复 只需要把第二个if里面的1改为允许的个数即可!!!