面试题库:150道经典题 ---- 排序后去重
发布时间
阅读量:
阅读量
面试经典 150 题 ---- 删除排序数组中的重复项
- 去除有序数组中的重复元素
-
- 方案一:采用双指针技术
-
删除排序数组重复项问题解析
方法一:双指针
存在一个需要原地修改的题目,很可能仍然采用双指针的解题思路。设定 right 用于标识当前遍历数组所到达的位置下标,而 left 指针则用于指示下一个不同元素应当被放置的下标位置,初始时两个指针均指向索引 1。
class Solution {
public int removeDuplicates(int[] nums) {
int len = nums.length;
int left = 1, right = 1;
while (right < len) {
if (nums[right] != nums[right - 1]) {
nums[left] = nums[right];
left ++ ;
}
right ++ ;
}
return left;
}
}
全部评论 (0)
还没有任何评论哟~
