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 1122 and 3. It doesn't matter what you leave beyond the new length.

 

public class Solution {
    public int removeDuplicates(int[] nums) {
        int left = 0;
        for(int n: nums){
            if(left < 2 || n > nums[left - 2]){
                nums[left++] = n;
            }
        }
        return left;
    }
}

 

posted @ 2016-11-27 13:38  微微程序媛  阅读(93)  评论(0编辑  收藏  举报