面试经典 150 题 ---- 删除排序数组中的重复项

面试经典 150 题 ---- 删除排序数组中的重复项

删除排序数组中的重复项

方法一:双指针

有是一个原地修改的题目,大概率依旧是双指针。

定义 right 表示遍历数组到达的下标位置,left 指针表示下一个不同元素将要填入的下标位置,两个指针初始都指向 1。

java 复制代码
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;
    }
}
相关推荐
洋不写bug16 小时前
链表面试笔试经典题目详细解析,题目多解法,复杂度分析
数据结构·链表·面试
黄敬峰17 小时前
一文搞懂结构化大模型输出:从 SSE 到 Tool Calling 的四种姿势
面试
星星落进兜里18 小时前
Redis 内存缓存,面试补充
数据库·redis·面试
蒸蒸yyyyzwd18 小时前
cpp 选手秋招学习笔记 day27
服务器·c++·面试·八股
程序员清风19 小时前
聊聊怎么缓解找工作的焦虑感?
java·后端·面试
杰克尼20 小时前
同城拼车项目面试问题_01
spring·面试·职场和发展
YonyouHRSaaS20 小时前
2026年AI招聘系统怎么选?AI面试功能怎么评估?
人工智能·面试·职场和发展·求职招聘·ai面试
写代码像蔡徐抻20 小时前
三年了,AI为何还没有抢走程序员饭碗?
前端·后端·面试
YHL20 小时前
🚀 SDD:告别「氛围编程」,迎接规范驱动开发新时代
面试
天衍四九-21 小时前
Agent Skills从入门到工程化(十六):面试中如何讲清楚 Agent Skills?
大数据·数据库·人工智能·python·chatgpt·面试