题目描述
26. 删除有序数组中的重复项 - 力扣(LeetCode)
思路:
由于题目说不需要考虑数组中超出新长度后面的元素,所以我们可以利用左右指针,左边的指针表示数组的新长度,右边的指针遍历数组,判断该位置是否和前面一个位置相等。
class Solution {
public int removeDuplicates(int[] nums) {
if (nums.length == 0)
return 0;
int left = 1;
for (int right = 1; right < nums.length; right++) {
if (nums[right] != nums[right - 1]) {
nums[left] = nums[right];
left++;
}
}
return left;
}
}