0
点赞
收藏
分享

微信扫一扫

LeetCode刷题——80. 删除排序数组中的重复项 II


题目

LeetCode刷题——80. 删除排序数组中的重复项 II_重置

思路

是题目26. 删除排序数组中的重复项的升级版,条件是删除重复元素,但每个元素最多重复两次。

总体代码是类似的,这里需要额外一个变量来保存是否重复了两次。

代码

class Solution(object):
def removeDuplicates(self, nums):
"""
:type nums: List[int]
:rtype: int
"""

size = len(nums)
i = 1 #i指向下一个元素
flag = False
while i < size:
if nums[i] == nums[i-1]:
if flag == False:
flag = True #True表示重复了两次了。
i += 1
else: # 该删了
del nums[i]
size -= 1
else: # 到了新的元素,flag重置为False
flag = False
i += 1

return len(nums)

LeetCode刷题——80. 删除排序数组中的重复项 II_leetcode_02


举报

相关推荐

0 条评论