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

相关推荐
HAPPY酷9 分钟前
压缩文件格式实战速查表 (纯文本版)
python
sin_hielo12 分钟前
leetcode 3578
数据结构·算法·leetcode
祝余Eleanor27 分钟前
Day 31 类的定义和方法
开发语言·人工智能·python·机器学习
背心2块钱包邮27 分钟前
第6节——微积分基本定理(Fundamental Theorem of Calculus,FTC)
人工智能·python·机器学习·matplotlib
larance35 分钟前
修改jupyterlab 默认路径
python
前端小白在前进43 分钟前
力扣刷题:无重复字符的最长子串
算法·leetcode·职场和发展
别叫我->学废了->lol在线等1 小时前
python单例模式下线程安全优化
python·安全·单例模式
西江649761 小时前
【个人博客系统—测试报告】
python·功能测试·jmeter·pycharm·postman
CHANG_THE_WORLD1 小时前
C++ vs Python 参数传递方式对比
java·c++·python
好易学·数据结构2 小时前
可视化图解算法72:斐波那契数列
数据结构·算法·leetcode·动态规划·力扣·牛客网