首页 > 学院 > 开发设计 > 正文

80. Remove Duplicates from Sorted Array II

2019-11-06 09:21:07
字体:
来源:转载
供稿:网友

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.

使用两个指针,其中i遍历原数组中的每个元素,k指向删除重复数字后的长度。

public class Solution {    public int removeDuplicates(int[] nums) {        if(nums.length==0) return 0;        int i=2,k=2;        while(i<nums.length){            if(!(nums[i]==nums[k-1]&&nums[i]==nums[k-2])){                nums[k++]=nums[i];            }            i++;        }        return k;    }}


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表