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 static int removeDuplicates(int[] nums) {
		int index=0,temp=0;
	
	    for(int i=1;i<nums.length;i++){
	    	if(nums[i] != nums[i-1]){
	    		nums[++index]=nums[i];
	    		temp=0;
	    	}else{
	    		temp++;
	    		if(temp<2){
	    			nums[++index]=nums[i];
	    		}
	    	}
	    }
	    return index+1;
	}
	
	public static void main(String[] args) {
		int[] a={1,1,1,2,3,3,3,3,4,4};
		int b=removeDuplicates(a);
		System.out.println(b);
	}
}


你可能感兴趣的:(LeetCode,数组)