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