我的js算法爬坑之旅- 移除元素

167 阅读1分钟

第六天:力扣第26题,移除元素

地址:leetcode-cn.com/problems/re…

思路:就是没有思路

var removeElement = function(nums, val) {

    for(let i = 0;i<nums.length;i++)
    {
        if(nums[i]==val)
        {
            nums.splice(i,1);
            i--;
        }
    }
}
执行用时:92 ms, 在所有 JavaScript 提交中击败了32.30%的用户
内存消耗:37.1 MB, 在所有 JavaScript 提交中击败了45.50%的用户

也没什么好的代码了,也就双指针了

var removeElement = (nums, val) => {
  let index = 0, last = nums.length - 1
  while (index <= last) {
    if (nums[index] === val) {
      nums[index] = nums[last]
      last--
    } else {
      index++
    }
  }
  return index
}