首页 > 代码库 > [LeetCode]80 Remove Duplicates from Sorted Array II

[LeetCode]80 Remove Duplicates from Sorted Array II

https://oj.leetcode.com/problems/remove-duplicates-from-sorted-array-ii/

http://blog.csdn.net/linhuanmars/article/details/24343525

public class Solution {
    public int removeDuplicates(int[] A) {
        
        if (A == null)
            return -1; // invalid input
            
        if (A.length == 0 || A.length == 1)
            return A.length;    // No need further logic.
            
        int lastv = A[0];
        int newlen = 1;
        int hit = 0;
        for (int i = 1 ; i < A.length ; i ++)
        {
            int curv = A[i];
            if (curv != lastv)
            {
                A[newlen] = curv;
                newlen ++;
                hit = 0;
                lastv = curv;
            }
            else if (hit == 0)
            {
                // We are still OK.
                A[newlen] = curv;
                newlen++;
                hit ++;
            }
        }
        
        return newlen;
    }
}


[LeetCode]80 Remove Duplicates from Sorted Array II