leetcode 26. 删除有序数组中的重复项



解题思路:

使用list.count方法判断值是否重复,重复,则使用list.index方法找到重复值下标,使用list.pop方法删除对应的值,每删一个重复值,对应值重复次数-1

代码

python 复制代码
class Solution(object):
    def removeDuplicates(self, nums):
        """
        :type nums: List[int]
        :rtype: int
        """
        t = len(nums)
        if t ==1:
            print(1)
            print(nums)
        elif t ==0:
            print(0)
            print([])
        else:
            for i in range(t-1):
                #加上if i<t-1,否则会报错
                if i<t-1:
                    count1 = nums.count(nums[i])
                while count1>1:
                    position=nums.index(nums[i],i+1)
                    nums.pop(position) 
                    count1-=1
                t = len(nums)
            print(t)
            print(nums)

ps:若无改变原列表要求,可以使用集合来去重 list(set(列表))或者增加一个列表,新的列表装无重复数据:依次从原列表区数据,判断新列表是否有对应数据,无则将数据添加至新列表,若使用pop()取出,记得倒置 reverse()

相关推荐
郑洁文几秒前
基于Python的HTTP服务漏洞信息收集工具设计与实现
开发语言·python·http
川石课堂软件测试3 分钟前
零基础小白如何学习自动化测试
python·功能测试·学习·测试工具·jmeter·压力测试·harmonyos
菜菜的顾清寒9 分钟前
力扣HOT100(50)动态规划-零钱兑换
算法·leetcode·动态规划
在繁华处10 分钟前
Java从零到熟练(十二):Java与AI工具整合
java·人工智能·python
如烟花的信页13 分钟前
数美滑块逆向分析
javascript·爬虫·python·js逆向
8Qi814 分钟前
LeetCode 148. 排序链表 —— 解法二:自底向上归并(迭代,O(1) 空间)
数据结构·算法·leetcode·链表·归并·迭代
凯瑟琳.奥古斯特15 分钟前
力扣1235完整解法详解
java·开发语言·leetcode
轮子飞了36 分钟前
记一次 Spring AI Alibaba + 百炼的踩坑:结构化输出与联网搜索的冲突
人工智能·python·spring
专注VB编程开发20年41 分钟前
VB.NET是唯一能直接打击 Python 的语言
python
梦想三三1 小时前
【NLP入门到实战】TF-IDF算法详解 + 红楼梦120回关键词提取
人工智能·python·计算机视觉