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 1, 1, 2, 2 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); 
	} 
}

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/7207.html

(0)
上一篇 2021年7月17日
下一篇 2021年7月17日

相关推荐

发表回复

登录后才能评论