面试经典 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;
    }
}
相关推荐
Nil2086 小时前
leetcode 17电话号码的字母组合
算法·leetcode·职场和发展
ocean21039 小时前
2025-2026年AI算法与模型研发面试高频知识点洞察
人工智能·算法·面试
ShineWinsu11 小时前
对于MySQL:数据库的操作的解析
linux·数据库·c++·mysql·面试·笔试·库的操作
黄敬峰11 小时前
一文搞懂 LLM 结构化输出:从"抠 JSON"到"吐 JSON"的进化之路
面试
artificiali12 小时前
拼好卷 05
职场和发展
L小航呀13 小时前
代码随想录刷题 Day16
leetcode·面试
苦瓜小生14 小时前
【前端】【力扣与手撕】十天带你刷完前端算法与手撕,全是最简单好记的最优解法!day4
前端·数据结构·算法·leetcode·面试
AIsoft_868815 小时前
最好用的会议纪要APP怎么选?功能横评
面试·职场和发展·iphone
Nil20817 小时前
leetcode 46全排列
算法·leetcode·职场和发展
小白羊丨17 小时前
问数 Agent 整体架构、意图识别、历史上下文与 NL2SQL
java·面试·架构