跟踪“删除重复元素”:保留两个
给定排好序的数组,如果允许重复次数最多两次怎么办?
例如,
给定排序数组nums = [1,1,1,2,2,3]
,你的函数应返回长度= 5
,与第一五行NUMS是1
,1
,2
,2
和3
。
class Solution {
public int removeDuplicates(int[] nums) {
int i = 0;
for (int n : nums)
if (i < 2 || n > nums[i-2])
nums[i++] = n;
return i;
}
}