【LeetCode】删除排序数组中的重复项 II

题目

链接

思路

双指针

我好聪明啊,自己想出了这个双指针的办法,哈哈哈哈哈哈哈,太高兴了

代码

python 复制代码
class Solution(object):
    def removeDuplicates(self, nums):
        """
        :type nums: List[int]
        :rtype: int
        """
        n=len(nums)
        if n<=1:
            return n

        left,right=0,0
        repeat={}
        while right<n:
            x=nums[right]
            if x not in repeat:
                repeat[x]=1
            else:
                repeat[x]+=1

            if repeat[x]<=2:
                nums[left]=x
                left+=1

            right+=1

        return left


solution=Solution()
input_content=[0,0,1,1,1,1,2,3,3]
ans=solution.removeDuplicates(input_content)
print(ans)
相关推荐
Jerry18 小时前
LeetCode 28. 找出字符串中第一个匹配项的下标
算法
Jerry20 小时前
LeetCode 459. 重复的子字符串
算法
海石1 天前
1500分的题目,确实有实力,不过还是我略胜一筹
算法·leetcode
海石1 天前
【记忆化搜索】条条大路通AC,走好适合你的那一条,走到后再考虑走得快
算法·leetcode
Jerry1 天前
LeetCode 151. 反转字符串中的单词
算法
咖啡星人k1 天前
从Vibe Coding到Prompt Engineering:AI编程的新技能树
面试·职场和发展·ai编程
a1117761 天前
LM 算法迭代过程动画演示(SLAM)
算法
头茬韭菜1 天前
Context 的生死抉择:四层压缩、截断算法与 Session Memory
算法·ai
Jerry1 天前
LeetCode 541. 反转字符串 II
算法
Jerry1 天前
LeetCode 344. 反转字符串
算法