面试经典 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;
    }
}
相关推荐
ychqsq1 小时前
234.无题
经验分享·职场和发展
桃桃乌龙_1 小时前
LangGraph 深度解析:从链到图,把 Agent 的循环画出来
面试
考研保研资料分享2 小时前
地信遥感保研至南京大学南赫:六场考核与跨专业失利复盘
面试
考研保研资料分享2 小时前
物理保研至中科大:固体物理复习、四场面试与科研追问
面试·职场和发展
Rain的Java大神之路2 小时前
别再死磕 MySQL 了:向量数据库与 RAG 生产落地实录(Java 工程师专场)
java·后端·面试
桃桃乌龙_2 小时前
MCP 深度解析:AI 工具层的 USB-C,如何把 N×M 个适配器收敛成 N+M
面试
鸥梨菌Honevid3 小时前
UVM Sequencer 深度解析:FIFO 深度、req/rsp 应答模型与高频面试坑
面试·职场和发展
用户6222884048193 小时前
站在JDK的角度理解线程池:从execute 到 getTask 一篇讲透
java·面试
考研保研资料分享3 小时前
生态学保研经验:从中央民族大学到上交,科研分工与多校考核(2025)
面试
studyForMokey4 小时前
【Android 面试】Paging3
android·面试·职场和发展