【leetcode初级算法JS实现】1.删除排序数组中的重复项
程序员文章站
2022-04-15 14:37:54
...
// 解法1
// 从后开始遍历,当 当前的数与前一个相等时,则移除当前的数。
/**
* @param {number[]} nums
* @return {number}
*/
var removeDuplicates = function(nums) {
for(let i = nums.length-1; i>0; i--){
if(nums[i] === nums[i-1]){
nums.splice(i, 1);
}
}
return nums.length;
};
// 解法2
// temp保存第一个值,将index初始为1,从前开始遍历,当当前的值与temp不相等时,则将temp等于当前的值
// nums[index]等于当前的值,然后index++
// 即[1,1,2,2,3] => [1,2,2,2,3] => [1,2,3,2,3]
// 最后slice截取数组[1,2,3]
/**
* @param {number[]} nums
* @return {number}
*/
var removeDuplicates = function(nums) {
if(nums.length <= 1) return nums.length;
let temp = nums[0];
let index = 1;
for(let i = 1; i < nums.length; i++){
if(nums[i] !== temp){
temp = nums[i];
nums[index] = temp;
index++;
}
}
nums = nums.slice(0, index);
return nums.length;
};
推荐阅读
-
Python3实现从排序数组中删除重复项算法分析
-
Python实现删除排序数组中重复项的两种方法示例
-
[每日一题] 97. 删除排序数组中的重复项(数组、unique去重、distance函数、泛型算法)
-
LeetCode 探索 初级算法 数组 第一题:删除排序数组中的重复项
-
算法--删除排序数组中的重复项
-
Python3实现从排序数组中删除重复项算法分析
-
JavaScript算法系列--leetcode删除排序数组中的重复项
-
OJ ------ LeetCode 26 : 删除排序数组中的重复项
-
LeetCode--80. 删除排序数组中的重复项Ⅱ(C,Python)
-
LeetCode--26. 删除排序数组中的重复项(C, Python)