目 录CONTENT

文章目录

4/150 88-删除有序数组中的重复项 II

TalentQ
2025-07-31 / 0 评论 / 0 点赞 / 1 阅读 / 0 字

1 题目

88-删除有序数组中的重复项 II

2 思路

双指针+快慢:同 3/150 26-删除有序数组中的重复项 ,原来是比较 i-1的元素和j元素,现在是比较 i-2元素和j元素。时间复杂度:O(n),空间复杂度:O(1)

3 题解

class Solution {
 public:
  int removeDuplicates(vector<int>& nums) {
    int n = nums.size();
    if (n < 2) return n;

    int i = 2, j = 2;
    while (j < n) {
      if (nums[i-2] != nums[j]) {
        nums[i++] = nums[j];
      }
      ++j;
    }
    return i;
  }
};

0

评论区