[leetcode]Remove Duplicates from Sorted Array II
Remove Duplicates from Sorted Array II
Follow up for "Remove Duplicates":
What if duplicates are allowed at most twice?For example,
Given sorted array A =[1,1,1,2,2,3]
,Your function should return length =
5
, and A is now[1,1,2,2,3]
.
算法思路:
跟[leetcode]Remove Duplicates from Sorted Array没太大区别,做一个标记即可。
代码:
1 public class Solution { 2 public int removeDuplicates(int[] A) { 3 if(A == null || A.length == 0) return 0; 4 int index = 1; 5 boolean twice = false; 6 for(int i = 1; i < A.length; i++){ 7 if(A[i] == A[i - 1] ){ 8 if(!twice){ 9 twice = true; 10 A[index++] = A[i]; 11 } 12 }else{ 13 twice = false; 14 A[index++] = A[i]; 15 } 16 } 17 return index; 18 } 19 }