Leetcode 题目解析之 Remove Duplicates from Sorted Array II

2022-01-09 11:44:49 浏览数 (4)

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.

代码语言:txt复制
    public int removeDuplicates(int[] nums) {
        int cur = 2;
        for (int i = cur; i < nums.length; i  ) {
            // 一个数字,最多出现2次
            if (!(nums[i] == nums[cur - 1] && nums[i] == nums[cur - 2])) {
                nums[cur  ] = nums[i];
            }
        }
        return Math.min(cur, nums.length);
    }

1 人点赞