image.png

解决思路

双指针

只需要与当前去重后的数组中倒数第二个数比较即可

  1. public int removeDuplicates(int[] nums) {
  2. int i = 0;
  3. for (int n : nums)
  4. if (i < 2 || n > nums[i - 2])
  5. nums[i++] = n;
  6. return i;
  7. }