面试经典 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;
    }
}
相关推荐
Bella的成长园地6 小时前
面试中关于 c++ async 的高频面试问题有哪些?
c++·面试
Abona7 小时前
C语言嵌入式全栈Demo
linux·c语言·面试
XH华8 小时前
备战蓝桥杯,第七章:函数与递归
职场和发展·蓝桥杯
她说..10 小时前
策略模式+工厂模式实现审批流(面试问答版)
java·后端·spring·面试·springboot·策略模式·javaee
七禾页丫12 小时前
面试记录14 上位机软件工程师
面试·职场和发展
前端菜鸟日常13 小时前
2026 鸿蒙原生开发 (ArkTS) 面试通关指南:精选 50 题
华为·面试·harmonyos
jiayong2315 小时前
Vue2 与 Vue3 核心原理对比 - 面试宝典
vue.js·面试·职场和发展
多多*15 小时前
Mysql数据库相关 事务 MVCC与锁的爱恨情仇 锁的层次架构 InnoDB锁分析
java·数据库·windows·sql·oracle·面试·哈希算法
cyforkk16 小时前
15、Java 基础硬核复习:File类与IO流的核心逻辑与面试考点
java·开发语言·面试
jiayong2316 小时前
Vue2 与 Vue3 常见面试题精选 - 综合宝典
前端·vue.js·面试