删除已排好序数组中的相同元素,并返回数组长度;
设置两个指针,一个慢指针i,一个快指针j;如果nums[i]==nums[j],则j++;如果nums[j]!=nums[i],则i++后,交换i,j两元素位置。
class Solution:
def removeDuplicates(self, nums: List[int]) -> int:
if len(nums)==0:
return 0;
i=0
for j in range(1,len(nums)):
if nums[j]!=nums[i]:
i+=1
nums[i]=nums[j]
return i+1