【LeetCode】80.删除有序数组中的重复项II

1. 题目


2. 分析

3. 代码

python 复制代码
class Solution:
    def removeDuplicates(self, nums: List[int]) -> int:
        if len(nums) < 3:
            return len(nums)
        
        i = 0
        j = 1
        k = 2
        while(k < len(nums)):
            if (nums[i] == nums[j]):
                while(k < len(nums) and nums[j] == nums[k] ):
                    k+=1
                if (k < len(nums)):
                    j+=1                
                    i+=1
                    nums[j] = nums[k]
                    k+=1                    
            else:
                j+=1
                i+=1
                nums[j] = nums[k]
                k+=1
        return j+1
相关推荐
roman_日积跬步-终至千里13 分钟前
【算法3】二叉树中的最大路径和
算法
XUEYUAN521229 分钟前
IP 池调度算法实战:代理池负载均衡、健康检查与失效剔除机制(2026)
tcp/ip·算法·负载均衡
无小道31 分钟前
算法——问题转化
算法
evans在进步36 分钟前
LeetCode 53 最大子数组和:一次遍历掌握 Kadane 算法
算法·leetcode·职场和发展
小七在进步42 分钟前
数据结构:选择排序
数据结构·算法·排序算法
Nil2081 小时前
leetcode 230二叉搜索树中第k小的元素
算法·leetcode·职场和发展
被怪兽吃掉了1 小时前
5.2.1一维组数定义方式
开发语言·c++·算法
不会就选b1 小时前
Linux之线程进阶---封装信号量
数据结构·算法
不会就选b1 小时前
算法日常・每日刷题--<BFS&&最短路径>4
算法·宽度优先
旖旎夜光1 小时前
LeetCode 69:x 的平方根(二分查找) —— 题解
数据结构·c++·算法·leetcode·二分查找