【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)
相关推荐
How_doyou_do13 分钟前
Dijkstra
算法
赵和范39 分钟前
C++:书架
开发语言·c++·算法
tmiger1 小时前
图像匹配导航定位技术 第 10 章
人工智能·算法·计算机视觉
wuxiguala1 小时前
【文件系统—散列结构文件】
linux·算法
keepDXRcuriosity2 小时前
深入探索快速排序算法:原理与 C 语言实现
c语言·算法·排序算法
flying_13142 小时前
面试常问系列(一)-神经网络参数初始化-之-softmax
深度学习·神经网络·算法·机器学习·面试
蒟蒻小袁3 小时前
力扣面试150题-- 翻转二叉树
算法·leetcode·面试
矢鱼4 小时前
单调栈所有模版(2)
算法
轮到我狗叫了4 小时前
力扣智慧思想小题,目录力扣.跳跃游戏(思想很重要)力扣.跳跃游戏II(还是思想)力扣.分发糖果力扣151.反转字符串中的单词力扣.轮转数组
数据结构·算法·leetcode