Featured image of post Remove Duplicates from Sorted Array

Remove Duplicates from Sorted Array

26. Remove Duplicates from Sorted Array

分析

  1. 用索引 k 记录非重复元素的位置。
  2. 判断当前元素 i 是否为第一个元素 或 是否与前一个元素不等。
  3. 如果满足上述条件,将当前元素复制到数组中索引为 k 的位置,然后递增 k。
  4. 最后返回索引 k,它表示移除重复元素后的数组长度。

C++代码

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
class Solution {
public:
    int removeDuplicates(vector<int>& nums) {
        int k = 0;
        for (int i = 0; i < nums.size(); i ++ )
            if (!i || nums[i] != nums[i - 1])
                nums[k ++ ] = nums[i];
        return k;
    }
};
Built with Hugo
Theme Stack designed by Jimmy