面试经典 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;
    }
}
相关推荐
蓝色的杯子40 分钟前
Python面试30分钟突击掌握-LeetCode1-Array
开发语言·python·面试
不爱吃炸鸡柳1 小时前
6道经典算法题详解:从排序到链表,覆盖面试高频考点
算法·链表·面试
wfbcg1 小时前
每日算法练习:LeetCode 3. 无重复字符的最长子串 ✅
算法·leetcode·职场和发展
何陋轩1 小时前
AI时代,程序员何去何从?别慌,看完这篇你就明白了
后端·面试
keqistarry1 小时前
java-python快速转语言
面试
_日拱一卒1 小时前
LeetCode:矩阵置零
java·数据结构·线性代数·算法·leetcode·职场和发展·矩阵
Wect1 小时前
JS手撕:函数进阶 & 设计模式解析
前端·javascript·面试
玛丽莲茼蒿1 小时前
Leetcode hot100 【中等】括号生成
算法·leetcode·职场和发展
小欣加油1 小时前
leetcode 128 最长连续序列
c++·算法·leetcode·职场和发展
前端摸鱼匠2 小时前
【AI大模型春招面试题18】 L1、L2正则化、Dropout、早停(Early Stopping)的原理与适用场景?
人工智能·ai·语言模型·面试·大模型