面试经典 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;
    }
}
相关推荐
8Qi85 小时前
LeetCode 213:打家劫舍 II(House Robber II)—— 题解 ✅
算法·leetcode·职场和发展·动态规划
橘右今5 小时前
2026 Java后端高频面试宝典
java·开发语言·面试
cuso4win7 小时前
Feed 流面试笔记
笔记·面试·职场和发展
小蒋聊技术7 小时前
电商系列第九课:结算中心 —— 电商财务底盘,资金分账与 AI 智能化演进
人工智能·面试·职场和发展
8Qi88 小时前
LeetCode 1049:最后一块石头的重量 II —— 题解 ✅
算法·leetcode·职场和发展·动态规划·01背包
海梨花9 小时前
快手面试高频算法题
java·算法·面试
Zik----10 小时前
保研面试拷打
面试·职场和发展
zzz_236811 小时前
【RabbitMQ】面试系列 · 第一期:基础认知与选型实战
分布式·面试·rabbitmq
运筹vivo@11 小时前
LeetCode 2574. 左右元素和的差值
算法·leetcode·职场和发展·每日一题
野生技术架构师11 小时前
2026 Java面试宝典(春招/社招/秋招通用):没有前言,只有答案,直接开背
java·开发语言·面试