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()

相关推荐
坤坤子吖12 分钟前
Python基础语法学习:条件、循环与程序控制
开发语言·笔记·python·学习
伞伞悦读21 分钟前
【第53期】有序插入把二叉搜索树变成链:别只看“树”的名字
python
郝学胜_神的一滴25 分钟前
AI 编程智能体 04:一文看懂智能体的核心能力与概念辨析
人工智能·python
All for pursuit.30 分钟前
【回溯-5】78.子集
数据结构·c++·算法·leetcode
一缕82年的清风34 分钟前
实战指南:如何把现有 REST API 工业级封装为 MCP(Model Context Protocol)服务
python·mcp
狼与自由38 分钟前
python打包
开发语言·python
Είναι η κοπέλα44 分钟前
Python 虚拟环境:venv、conda 与 Python 版本选择全解
开发语言·python·conda
蒲公英eric44 分钟前
Python工具链与LaTeX排版:把兵器配齐
人工智能·python·算法·数学建模·数学建模工具
言乐61 小时前
JavaScript概括前端原理
开发语言·前端·javascript·python·ecmascript
用户019027581611 小时前
如何用 Python 回测肯特纳通道(Keltner Channel)突破策略?(EMA+ATR 通道)
python