LeetCode 26. 删除排序数组中的重复项 (双指针)

删除排序数组中的重复项
选择l,r为双指针,它们表示着一个区间的左右端点,再用一个idx表示要修改的位置。

class Solution {
     
public:
    int removeDuplicates(vector<int>& nums) {
     
        int n = nums.size();
        int idx = 0,l = 0,r = l;
        while(l<n){
     
            r = l;
            while(r<n && nums[r]==nums[l]){
     
                r++;
            }
            nums[idx++] = nums[r-1];
            l = r;
        }   
        return idx;
    }
};

你可能感兴趣的:(LeetCode,#,LC双指针)