LeetCode80. 删除有序数组中的重复项 II(JavaScript版)

LeetCode题目链接

题目描述:给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使得出现次数超过两次的元素只出现两次 ,返回删除后数组的新长度。

不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。

js版本

javascript 复制代码
/**
 * @param {number[]} nums
 * @return {number}
 */
var removeDuplicates = function(nums) {
    if (nums.length <= 2){
        return nums.length
    }
    let s = 0;
    let f = 1;
    for (let i=1;i<nums.length;i++){
        if(nums[i] !== nums[s]){  
            nums[s+1]=nums[i]
            s++; 
            f=1;
        } else if(f<2) {
                 nums[s+1]=nums[i]
                   s++; 
                   f++;
        }    

    }
  return s+1
};
相关推荐
半个落月17 分钟前
面试必问的 JS 原型链,我用 16 个示例给你彻底讲明白
javascript
丷丩33 分钟前
12. 渲染:MapLibre GL JS 集成与多源瓦片联动
javascript·矢量瓦片·maplibre gl js·地图服务器
橘子星1 小时前
别再懵圈!JS 执行机制的 “千层套路” 全揭秘
前端·javascript
拾年2751 小时前
__proto__ vs prototype:90% 的人分不清的 JavaScript 核心
前端·javascript·面试
提子拌饭1331 小时前
个人月事记录表应用 - 鸿蒙PC Electron框架完整实现指南
前端·javascript·华为·electron·前端框架·开源·鸿蒙系统
超人气王1 小时前
新手学前端JS浅拷贝和深拷贝:对象复制竟然是个“替身文学”?
javascript·面试
YHL1 小时前
📚 JS执行机制(执行上下文 + 调用栈 + 编译流程)
前端·javascript
不简说1 小时前
这次真香!sv-print 可视化打印设计器更新:插件脚手架、Excel 导出、弹窗 API 三连发
前端·javascript·前端框架
无聊的老谢1 小时前
Web GIS 最佳实践:Vue 集成 Leaflet/OpenLayers 实现基站海量点位渲染
前端·javascript·vue.js
东风破_2 小时前
V8 如何执行你的代码——编译、上下文与调用栈
javascript