wordpress去除缓存石家庄百度seo
题目链接:移除元素
方式一:
解题思路:
遍历数组,遇到不同于val的项,就直接覆盖到nums数组中,从第一项开始覆盖,到最后,不同的项都安排到了数组的前面。
var removeElement = function (nums, val) {let index = 0for (let i = 0; i < nums.length; i++) {if (nums[i] !== val) {nums[index] = nums[i]index++}}return index
};
方式二:
解题思路:
头尾双指针,遇到等于val的项,就用末尾的值覆盖,末尾往前移了,将尾指针左移一位。
遇到不等于val的项,左指针往右移一位。
当两个指针交叉相遇循环结束。
var removeElement = function (nums, val) {let index = 0,last = nums.length - 1while (index <= last) {if (nums[index] === val) {nums[index] = nums[last]last--} else {index++}}return index
};
方式三:
解题思路:
splice方法,i要减1
var removeElement = (nums, val) => {for (let i = 0; i < nums.length; i++) {if (nums[i]===val) {nums.splice(i, 1)i--}}return nums.length
}