面试经典 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;
    }
}
相关推荐
yuezhilangniao1 小时前
程序人生-杂谈-简单对比一下 学霸和linux科学设计
linux·程序人生·职场和发展
一谦的视界1 小时前
大学新生,如何轻松入门编程成为雷布斯
程序人生·职场和发展·程序员创富
JZ6459181 小时前
程序人生-Hello’s P2P
程序人生·职场和发展
wxgl_xyx2 小时前
程序人生-Hello’s P2P(2025)
程序人生·职场和发展·p2p
追随者永远是胜利者2 小时前
(LeetCode-Hot100)64. 最小路径和
java·算法·leetcode·职场和发展·go
雨夜之寂2 小时前
大模型 ai coding 比较
后端·面试
香芋Yu3 小时前
【大模型面试突击】04_Embedding与表示学习
学习·面试·embedding
追随者永远是胜利者4 小时前
(LeetCode-Hot100)70. 爬楼梯
java·算法·leetcode·职场和发展·go
追随者永远是胜利者4 小时前
(LeetCode-Hot100)49. 字母异位词分组
java·算法·leetcode·职场和发展·go
努力学算法的蒟蒻5 小时前
day89(2.18)——leetcode面试经典150
算法·leetcode·面试