力扣算法练习题---原地 删除重复出现的元素

 时间:2024-10-21 22:40:04

1、示例 1:给定数组 nums = [1,1,2],函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。你不需要考虑数组中超出新长度后面的元素。

2、示例 2:给定 nums = [0,0,1,1,1,2,2,3,3,4],函数应该返回新的长度 5, 并且原数组 nums 的前五个元素被修改为 0, 1, 2, 3, 4。你不需要考虑数组中超出新长度后面的元素。

3、解题思路:把数组分为两部分,一部分是起始位置到遍历位置部分的数据,另一部分是从遍历位置到末尾的数据,如果当前遍历元素在第二部分,就表示该元素在列表中有多个重复的。删除该元素,直到第二部分不存在该元素为止,然后遍历下一个元素。

4、代码:class Solution: def removeDuplicates(self, nums): i =0 while i <len(nums) : while nums[i] in nums[i+1:]: nums.remove(nums[i]) else: i +=1 return len(nums)

  • 做种植牙骨量不足如何植骨?
  • 怎样开始QQ钱包大富翁
  • 申论热点—媒体在申论材料出现时几种分析角度
  • vivoX70Pro如何启用无障碍
  • 英雄联盟中的诺克萨斯统领斯维因怎么购买?
  • 热门搜索
    三年级数学手抄报内容 关于节日的英语手抄报 手抄报版面设计图简单的 端午节手抄报简单好看 勤俭廉政手抄报内容 我心中的祖国手抄报 关于校车的手抄报 手抄报字体设计 祖国发展我成长手抄报 高中手抄报