https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array/
//javascript
var removeDuplicates = function(nums) {
let i = 0;
for(let j=1;j<nums.length;j++){
if(nums[i]!==nums[j]){
i++;
nums[i] = nums[j];
}
}
return i+1;
快慢指针
i=0指向第一个元素,然后j=1指向i后面一个元素。
循环开始,
如果nums[i]与nums[j]不相等的话,就将i移动到后面一个元素,然后把nums[i]赋值为nums[j],这样的话重复的元素就被取代了。
https://leetcode-cn.com/problems/remove-element/
//javascript
var removeElement = function(nums, val) {
let i = 0;
for(let j=0;j<nums.length;j++){
if(nums[j]!==val){
nums[i] = nums[j];
i++;
}
}
return i;
};
也是用快慢指针,一个慢指针i用来存放元素,一个快指针用来判断每个元素是不是符合条件的元素,如果是的话就赋值给nums[i],不是则继续访问下一个元素。