删除排序数组中的重复项
2020-10-28 00:33 woshihuangrulin 阅读(70) 评论(0) 收藏 举报使用快慢指针方法,慢指针指向已经去重之后的元素尾部,快指针在遇到和慢指针相同元素时往下走,遇到不同元素时慢指针往下走一步,并将慢指针指向的元素值赋为快指针指向的元素值,具体代码如下
class Solution {
public:
int removeDuplicates(vector<int>& nums) {
if (nums.empty()) {
return 0;
}
int left = 0;
int right = 0;
while (right < nums.size()) {
if (nums[right] == nums[left]) {
right++;
}
else {
left++;
nums[left] = nums[right];
right++;
}
}
return left+1;
}
};
浙公网安备 33010602011771号