面试经典 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;
    }
}
相关推荐
小义_6 小时前
JDK 深度解析
java·linux·开发语言·python·面试
数智启示录7 小时前
Doris精讲篇(六) 从第一批小文件到 -235:Doris 是怎样被正常写入拖死的
大数据·数据库·经验分享·面试·flink
RisunJan7 小时前
Android 面试知识点整理
android·面试·职场和发展
RisunJan7 小时前
uni-app 面试知识点梳理
面试·职场和发展·uni-app
沉默王二8 小时前
豆包工作Agent正式发布,直接给到夯。
人工智能·面试·agent
怕浪猫14 小时前
第 1 章 FDE的崛起
面试
怕浪猫1 天前
用了两年 AI 编程工具后,我重新理解了什么是「资深工程师」
算法·面试·架构
ychqsq1 天前
144.扎根
经验分享·职场和发展
阿宁学科技术库1 天前
关于“库库AI”在股票投研场景实用性的技术观察
大数据·人工智能·职场和发展
evans在进步1 天前
LeetCode 238 除自身以外数组的乘积:前缀积与后缀积详解
算法·leetcode·职场和发展