https://leetcode.com/problems/remove-duplicates-from-sorted-array-ii/description/
去重,要求有序数组中重复不超过两次。
思路:用i划分有序区,[0, i)
为有序区。用另一个指针n一次遍历,不超过两次这个条件可以与i-2号元素比较,若n的元素大于i-2号元素说明有序区最多有两次重复i-2和i-1,可以将n号放到i位置
class Solution:
def removeDuplicates(self, nums):
"""
:type nums: List[int]
:rtype: int
"""
i = 0
for n in nums:
if i < 2 or n > nums[i-2]:
nums[i] = n
i += 1
return i