快慢指针leetcode26
让慢指针 slow ⾛在后⾯,快指针 fast ⾛在前⾯探路,找到⼀个不重复的元素就告诉 slow 并让 slow 前进⼀步。这样当 fast 指针遍历完整个数组 nums 后,nums[0..slow] 就是不重复元素。
class Solution {
public int removeDuplicates(int[] nums) {
if(nums.length==0)
return 0;
int slow=0,fast=0;
while(fast<nums.length){
if(nums[fast]!=nums[slow]){
slow++;
nums[slow]=nums[fast];
}
fast++;
}
return slow+1;
}
}