解题思路:
- 如果输入的数组长度为1,则返回该数组
- 否则(len>2),使用i记录当前待插入的位置,j记录下一个与nums[i]不相等的位置,leng为待返回数组的长度
- 当nums[i] !== nums[j]时,把j位置的值nums[j]放在i+1位置.同时i++,j++
/**
* @param {number[]} nums
* @return {number}
*/
var removeDuplicates = function(nums) {
if(nums.length === 1) return nums.length;
let len = nums.length;
let j =1,i=0, leng =1;
for(;j<len;j++){
if(nums[i] !== nums[j]){
nums[++i] = nums[j];
leng++;
}
}
nums.length = leng;
return nums.length;
};