leetcode-80. Remove Duplicates from Sorted Array II
题目:
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.
public class Solution {
public int removeDuplicates(int[] nums) {
boolean flag = false;
int replace = 0 , next = 0,count =0;
while(next<nums.length){
nums[replace++] = nums[next];
count++;
if(!flag){
next++;
if(next <nums.length && nums[next]==nums[next-1]) flag = true;
}else{
int pre = nums[next];
while(next <nums.length && pre == nums[next])next++;
flag = false;
}
}
return count;
}
}