LeetCode #80. Remove Duplicates from Sorted Array II
题目
80. Remove Duplicates from Sorted Array II
解题方法
每个数可以出现两次,设置一个flag代表是否需要删除。遍历数组检查nums[i]是否等于nums[i+1],如果是的话再检查flag的状态,如果是删除状态1,则删除掉当前元素;否则置flag=1,i进一位。如果nums[i]!=nums[i+1],则置flag=0,i进一位。
代码
class Solution:
def removeDuplicates(self, nums: List[int]) -> int:
deleteflag = 0
i = 0
while i < len(nums) - 1:
if nums[i] == nums[i+1]:
if deleteflag:
nums.pop(i)
else:
deleteflag = 1
i += 1
else:
deleteflag = 0
i += 1

浙公网安备 33010602011771号