标签:
Follow up for "Remove Duplicates":
What if duplicates are allowed at most twice?
For example,
Given sorted array nums = [1,1,1,2,2,3],
Your function should return length = 5,
with the first five elements of nums being 1, 1, 2, 2 and 3.
It doesn‘t matter what you leave beyond the new length.
Subscribe to see which companies asked this question
思路:
计录出现次数超过2次的个数即可。
class Solution {
public:
int removeDuplicates(vector<int>& nums) {
int n = nums.size();
int count = 0; // 计录超过2个的个数
for(int i=2;i<n;i++) {
if(nums[i]==nums[i-2-count]) count++;
else nums[i-count] = nums[i];
}
return n - count;
}
};LeetCode:Remove Duplicates from Sorted Array II
标签:
原文地址:http://blog.csdn.net/itismelzp/article/details/51636475