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

相关推荐
不去幼儿园31 分钟前
【启发式算法】灰狼优化算法(Grey Wolf Optimizer, GWO)详细介绍(Python)
人工智能·python·算法·机器学习·启发式算法
二川bro35 分钟前
数据可视化进阶:Python动态图表制作实战
开发语言·python·信息可视化
青青子衿_211 小时前
TikTok爬取——视频、元数据、一级评论
爬虫·python·selenium
忘却的旋律dw1 小时前
使用LLM模型的tokenizer报错AttributeError: ‘dict‘ object has no attribute ‘model_type‘
人工智能·pytorch·python
20岁30年经验的码农2 小时前
Java RabbitMQ 实战指南
java·开发语言·python
studytosky3 小时前
深度学习理论与实战:MNIST 手写数字分类实战
人工智能·pytorch·python·深度学习·机器学习·分类·matplotlib
上不如老下不如小4 小时前
2025年第七届全国高校计算机能力挑战赛初赛 Python组 编程题汇总
开发语言·python·算法
Q_Q5110082854 小时前
python+django/flask的结合人脸识别和实名认证的校园论坛系统
spring boot·python·django·flask·node.js·php
Q_Q5110082854 小时前
python+django/flask的选课系统与课程评价整合系统
spring boot·python·django·flask·node.js·php
charlie1145141914 小时前
勇闯前后端Week2:后端基础——Flask API速览
笔记·后端·python·学习·flask·教程