Leetcode-Remove Duplicates from Sorted Array II

LiBlog發表於2014-11-16

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].

Solution:

 1 public class Solution {
 2     public int removeDuplicates(int[] A) {
 3         if (A.length==0) return 0;
 4         
 5         int index =0;
 6         int count = 0;
 7         for (int i=0;i<A.length;i++){
 8             A[index] = A[i];
 9             if (i+1<A.length)
10                 if (A[i]!=A[i+1]){
11                     index++;
12                     count=0;
13                 } else if (count<1){
14                     index++;
15                     count++;
16                 }
17             
18         }
19         return index+1;
20     }
21 }

 

相關文章