27. 移除元素
题目链接 下面的方法使用的就是双指针的做法,left控制元素的覆盖,right控制元素的遍历。 举例: 3 3 2 2的数组,val=3, 那么最后得到的数组是2 2 3 3 或者是 2 2 0 0.
var removeElement = function(nums, val) {
// j控制不相等元素的数量
let left = 0 ;
// 相等跳过,不相等就覆盖前面的数据,从头开始覆盖即可。覆盖就是删除数组中等于val的元素
// 覆盖多少,就是最后的剩余数组的长度
for(let right=0; right<nums.length; right++){
if(nums[right] != val){
nums[left] = nums[right]
left++
}
}
return left
};