001.从排序数组中删除重复项

题目

思路

这题只需要对比i和i+1值是否一致,一致则删除当前值(并从当前位置)继续对比。

解答

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/**
* @param {number[]} nums
* @return {number}
*/
var removeDuplicates = function(nums) {
var i = 0;
for(i;i < nums.length - 1;i++){
if(nums[i] === nums[i + 1]){
nums.splice(i,1);
--i; //这一行是关键,删除当前值后如果不把指针调回到当前,会漏掉i和之前值的一致性判断
}
}
return nums.length;
};

评论区