面试经典 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;
    }
}
相关推荐
努力学算法的蒟蒻24 分钟前
day53(1.4)——leetcode面试经典150
算法·leetcode·面试
Moment1 小时前
一杯茶时间带你基于 Yjs 和 reactflow 构建协同流程图编辑器 😍😍😍
前端·后端·面试
小袁顶风作案1 小时前
leetcode力扣——135.分发糖果
算法·leetcode·职场和发展
xrkhy1 小时前
Java全栈面试题及答案汇总(3)
java·开发语言·面试
我命由我123451 小时前
开发中的英语积累 P25:Axis、Stroke、Corner、Interceptor、Declared、Internal
经验分享·笔记·学习·职场和发展·求职招聘·职场发展·学习方法
码农水水2 小时前
阿里Java面试被问:单元测试的最佳实践
java·面试·单元测试
indexsunny2 小时前
互联网大厂Java求职面试实战:Spring Boot与微服务在电商场景中的应用解析
java·数据库·spring boot·微服务·面试·消息队列·电商
a努力。2 小时前
哈罗Java后端面试被问:消息队列的选型考量因素
java·面试·linq
橘颂TA2 小时前
【剑斩OFFER】算法的暴力美学——面试题 01.02 :判定是否互为字符串重排
c++·算法·leetcode·职场和发展·结构与算法
ada7_11 小时前
LeetCode(python)78.子集
开发语言·数据结构·python·算法·leetcode·职场和发展