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

相关推荐
lntu_ling8 分钟前
Python-基于Haversine公式计算两点距离
开发语言·python·gis算法
哈里谢顿6 小时前
Django 应用 OOM(Out of Memory)故障的定位思路和排查方法
python·django
甄心爱学习7 小时前
【python】获取所有长度为 k 的二进制字符串
python·算法
iAkuya7 小时前
(leetcode)力扣100 76数据流的中位数(堆)
算法·leetcode·职场和发展
tuotali20268 小时前
氢气压缩机技术规范亲测案例分享
人工智能·python
嫂子的姐夫8 小时前
030-扣代码:湖北图书馆登录
爬虫·python·逆向
a1117768 小时前
EasyVtuber(或其衍生/增强版本)的虚拟主播(Vtuber)面部动画生成与直播解决方案
python·虚拟主播
lintax8 小时前
计算pi值-积分法
python·算法·计算π·积分法
小凯123458 小时前
pytest框架-详解(学习pytest框架这一篇就够了)
python·学习·pytest
逻极8 小时前
pytest 入门指南:Python 测试框架从零到一(2025 实战版)
开发语言·python·pytest