题目
思路
是题目26. 删除排序数组中的重复项的升级版,条件是删除重复元素,但每个元素最多重复两次。
总体代码是类似的,这里需要额外一个变量来保存是否重复了两次。
代码
class Solution(object):def removeDuplicates(self, nums):""":type nums: List[int]:rtype: int"""size = len(nums)i = 1 #i指向下一个元素flag = Falsewhile i < size:if nums[i] == nums[i-1]:if flag == False:flag = True #True表示重复了两次了。i += 1else: # 该删了del nums[i]size -= 1else: # 到了新的元素,flag重置为Falseflag = Falsei += 1return len(nums)
如果觉得《LeetCode刷题——80. 删除排序数组中的重复项 II》对你有帮助,请点赞、收藏,并留下你的观点哦!