面试经典 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;
    }
}
相关推荐
Yuzhiyuxia4 小时前
【AI Agent面试系列】AI Agent记忆机制知识点1
人工智能·面试·职场和发展
考研保研资料分享7 小时前
2025公卫保研清华专硕:三校考核、英文读译与择校复盘
面试
Lichee2011 小时前
招行Java 面试知识点梳理:Spring 事务、锁、线程池、集合
java·面试
aiautotools12 小时前
Claude Code MCP 怎么配:命令、scope 与避坑
面试
soft_hub112 小时前
海外会议怎么用录音APP翻译会议内容
面试·职场和发展
考研保研资料分享12 小时前
2025生物信息跨保浙大:四校考核、文献读译与材料准备
面试
怕浪猫12 小时前
K3.1 直追 Astra,先补 13%
前端·javascript·面试
香蕉大香蕉(06敬畏市场)13 小时前
高频八股 · JVM(8)
java·jvm·面试·八股·大厂实习
CoderYanger13 小时前
Java EE 进阶:5. Spring IoC&DI(第二弹):Spring IoC
java·开发语言·spring boot·spring·面试·职场和发展·java-ee
Rain的Java大神之路14 小时前
面试被LeetCode 27(移除元素)问懵?别再用两层 for 循环了:一道“简单题”吃透双指针原地删除,附面试加分话术 + 11 个避坑清单
后端·leetcode·面试