使用Python删除排序数组中的重复项
问题描述:
给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。
不要使用额外的数组空间,你必须在原地修改输入数组并在使用O(1)额外空间的条件下完成。
示例
示例1:
给定数组nums=[1,1,2],
函数应该返回新的长度2,并且原数组nums的前两个元素被修改为1,2。
你不需要考虑数组中超出新长度后面的元素。
示例2:
给定nums=[0,0,1,1,1,2,2,3,3,4],
函数应该返回新的长度5,并且原数组nums的前五个元素被修改为0,1,2,3,4。
你不需要考虑数组中超出新长度后面的元素。
解题思路:
遍历列表,如果与当前元素与下一个相同则删除掉此元素
代码:
classSolution(object):
defremoveDuplicates(self,nums):
"""
:typenums:List[int]
:rtype:int
"""
i=0
while(i
ifi+2<=len(nums):
#第i+1+1个元素不为空
ifnums[i]==nums[i+1]:
nums.remove(nums[i])
i-=1
else:
returnlen(nums)
i+=1
以上内容为大家介绍了使用Python删除排序数组中的重复项,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。http://www.mobiletrain.org/
相关推荐HOT
更多>>python为什么不显示none
下面是关于Python中None的一些解释:None是一个特殊的常量。None和False不同。None不是0。None不是空字符串。None和任何其他的数据类型比较永远...详情>>
2023-11-06 20:39:22python怎样计算函数的返回值
python中,用def语句创建函数时,可以用return语句指定应该返回的值,该返回值可以是任意类型。需要注意的是,return语句在同一函数中可以出现...详情>>
2023-11-06 20:04:03python如何读取列表中元素的位置?
python读取列表中元素位置的方法:1、使用index()方法获取列表中指定元素的位置index()方法语法:str.index(str,beg=0,end=len(string))参数str...详情>>
2023-11-06 17:40:38Python中常见的字符串拼接方法有哪些?
针对大家在Python中常常遇到字符串拼接的问题,本文主要向大家介绍Python中常见的六种拼接方法:加号法、逗号法、直接拼接法、格式化法、join函...详情>>
2023-11-06 16:42:10