题目链接:https://leetcode.com/problems/remove-duplicates-from-sorted-array/
代码
class Solution:
def removeDuplicates(self, nums: List[int]) -> int:
if len(nums) == 0:
return 0
result_pos,last_value = 0,None
for i in range(len(nums)):
if i == 0 :
last_value = nums[i]
continue
if nums[i] == nums[i-1] :
continue
else:
nums[result_pos],last_value, result_pos= last_value,nums[i],result_pos + 1
nums[result_pos] = last_value
return result_pos + 1
思路详解
双指针模式:
遍历,找不到相同的数,指针留在那,继续往后查询,找到不同的数放在刚刚的指针里面,然后指针后移一个,继续遍历