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
};
相关推荐
Java 码农38 分钟前
nodejs koa留言板案例开发
前端·javascript·npm·node.js
ZhuAiQuan1 小时前
[electron]开发环境驱动识别失败
前端·javascript·electron
nyf_unknown1 小时前
(vue)将dify和ragflow页面嵌入到vue3项目
前端·javascript·vue.js
胡gh1 小时前
数组开会:splice说它要动刀,map说它只想看看。
javascript·后端·面试
TimelessHaze2 小时前
🔥 一文掌握 JavaScript 数组方法(2025 全面指南):分类解析 × 业务场景 × 易错点
前端·javascript·trae
EndingCoder3 小时前
React 19 与 Next.js:利用最新 React 功能
前端·javascript·后端·react.js·前端框架·全栈·next.js
ITMan彪叔3 小时前
Nodejs打包 Webpack 中 __dirname 的正确配置与行为解析
javascript·后端
风中凌乱的L3 小时前
vue 一键打包上传
前端·javascript·vue.js
张元清4 小时前
useMergedRefs: 组件封装必不可少的自定义Hook
前端·javascript·面试
openInula前端开源社区4 小时前
【openInula茶话会】第四期:openInula API2.0编译器原理
前端·javascript