python 版本:遍历列表原地删除
class Solution:
def removeDuplicates(self, nums: List[int]) -> int:
pre = None;
i = 0;
while i<len(nums):
if pre == nums[i]:
del(nums[i])
else:
pre = nums[i]
i = i+1
return i;
java 版本:设置两个快慢指针,i指针指向不重复的,j指针向后移动
class Solution {
public int removeDuplicates(int[] nums) {
if(nums.length == 0) return 0;
int i = 0;
for(int j :nums){
if(nums[i] == j) continue;
i++;
nums[i] = j;
}
return i+1;
}
}