面试经典 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;
    }
}
相关推荐
AC赳赳老秦9 分钟前
OpenClaw 助力技术面试:自动生成面试题、模拟面试、整理面试知识点
开发语言·python·面试·职场和发展·自动化·deepseek·openclaw
8Qi819 分钟前
LeetCode 4:寻找两个正序数组的中位数 —— 二分查找法
java·算法·leetcode·职场和发展·二分查找
林间码客21 分钟前
智能旅行规划助手 — 实习面试问答手册
面试·职场和发展
8Qi823 分钟前
LeetCode 32:最长有效括号 —— 栈 + 标记法 题解
java·数据结构·算法·leetcode·职场和发展··括号匹配
自由路飞30 分钟前
Trellis 从 0 到 1 实战指南:让 AI 从"随便聊聊"变成"项目协作者"
面试
浮午42 分钟前
腾讯AI应用开发一面实录:13道硬核面试题全解析
人工智能·面试·职场和发展
AI人工智能+电脑小能手1 小时前
【大白话说Java面试题 第106题】【并发篇】第6题:synchronized 锁的锁对象可以是什么?
java·开发语言·面试
cccyi72 小时前
C++ 面试题整理
c++·面试
uhakadotcom2 小时前
什么是Mass Assignment(批量赋值)风险
后端·面试·github
公考指南针3 小时前
公务员面试怎么准备?2026 结构化面试流程、答题训练和备考工具测评
经验分享·学习·面试