移除元素 2
给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素最多出现两次,返回移除后数组的新长度。
不要使用额外的数组空间,必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。
思路:
- 遍历数组
- 最多出现两次
arr[i] === arr[i+1] && arr[i+1] === arr[i+2]
- splice 删数后 i--
var data = [1,1,1,1,2,3,4,5]
function unique(arr){
for(let i=0;i<arr.length;i++){
if(arr[i] === arr[i+1] && arr[i+1] === arr[i+2]){
arr.splice(i,1)
i--
}
}
return arr.length
}
console.log(unique(data))