27.移除元素

LeetCode 原题链接

img

实现思路

  • 使用双指针实现,i 指向当前元素,j 指向下一个要替换的位置。
  • 遍历数组,如果当前元素不等于 val,则将其赋值给 j 指向的位置,并将 j 向右移动一位。
  • 最后 j 的值就是新数组的长度。

代码实现

var removeElement = function (nums, val) {
  let j = 0;
  for (let i = 0; i < nums.length; i++) {
    if (nums[i] != val) {
      nums[j] = nums[i];
      j++;
    }
  }
  return j;
};