leetcode_80删除有序数组中的重复项 II

1. 题意

删除有序数组中的重复元素,同一元素不能超过两次。

2. 题解

leetcode26. 删除有序数组中的重复项的升级版本,只需要考虑 n u m s l e n − 2 ≠ n u m s j numslen -2 \ne numsj numslen−2=numsj即可, l e n len len是排列好的有序数组长度, j j j遍历完整个数组。

  • 通解 k = 2 k=2 k=2
cpp 复制代码
class Solution {
public:
    int removeDuplicates(vector<int>& nums) {
        
        int sz = nums.size();
        int j = 0;
        for (int num: nums) {
            if ( j < 2 || nums[j - 2] != num){
                nums[j] = num;
                j++;
            }
        }

        return j;
    }
};
  • 模拟
cpp 复制代码
class Solution {
public:
    int removeDuplicates(vector<int>& nums) {
        int sz = nums.size();
        int i = 0;
        int j = 1;
        int len = 0;
        if (sz <= 2)
            return sz;

        for (int j = 1;j < sz; j++) {
            if (nums[i] != nums[j]) {
                nums[len++] = nums[i];

                if (j == sz - 1) {
                    nums[len++] = nums[j];
                }
                i++;
            }
            else {
                nums[len] = nums[i];
                nums[len + 1] =nums[i];
                len += 2;
                j++;
                while (j < sz && nums[j] == nums[i])
                    j++;
                if (j + 1 < sz) {
                    i = j;
                }
                else if (j < sz) {
                    nums[len++] = nums[j];
                }
            }
        }
       


        return len;
    }
};
相关推荐
2601_967760784 小时前
2026年PDF压缩与页码添加工具技术实测:性能、算法与本地化适配深度对比
算法·pdf
不会就选b5 小时前
算法日常・每日刷题--<贪心>7
数据结构·算法·leetcode
moonrailgun5 小时前
用 Node.js 复刻 Codex Astra 的终端星光
前端·javascript·算法
罗西的思考6 小时前
[Agent Memory / 强化学习] MemPO源码学习笔记 ---(1)--- 总体
人工智能·算法·机器学习
lvwangshu7 小时前
图论:LCA、树的直径、树的重心、二分图与 Tarjan 缩点
算法·图论
爱吃苹果的日记本7 小时前
数据结构第一课
c语言·数据结构·数据库·学习·c#
张小姐的猫7 小时前
【AI大模型接入SDK】 —— Gemini接入封装
android·数据结构·数据库·c++·人工智能·python
302wanger7 小时前
干与湿:AI 拿走脑力之后,人剩下什么
算法
计算机编程-吉哥8 小时前
脑肿瘤MRI智能识别系统:基于深度学习的像素级脑肿瘤语义分割平台【计算机毕业设计选题推荐】
人工智能·python·深度学习·算法·毕业设计·课程设计·大数据毕业设计选题推荐
用户204937554959 小时前
端侧语音部署踩坑:模型能跑不等于终端真的能用
后端·算法