数组:移除元素

参考资料:代码随想录

本题思路:通过快慢指针将两次循环减少到一次

java 复制代码
class Solution {
    public int removeElement(int[] nums, int val) {
        //0 1 2 2 2 2 3
        int fast = 0;
        int slow = 0;
        while(fast < nums.length){
            if(nums[fast] != val){
                nums[slow] = nums[fast];
                fast++;
                slow++;
            }else {
                fast++;
            }
        }
        return slow;
    }
}
相关推荐
2401_87320465几秒前
模板编译期循环展开
开发语言·c++·算法
木心月转码ing几秒前
Hot100-Day51-TT70爬楼梯
算法
NAGNIP几秒前
一文搞懂经典的优化算法都有哪些?
算法
CoovallyAIHub3 分钟前
2.5GB 塞进浏览器:Mistral 开源实时语音识别,延迟不到半秒
深度学习·算法·计算机视觉
我真会写代码4 分钟前
深度解析并发编程锁升级:从偏向锁到重量级锁,底层原理+面试考点全拆解
java·并发编程·
Meepo_haha9 分钟前
创建Spring Initializr项目
java·后端·spring
会编程的土豆10 分钟前
C++中的 lower_bound 和 upper_bound:一篇讲清楚
java·数据结构·算法
NAGNIP10 分钟前
一文搞懂深度学习中的损失函数设计!
人工智能·算法
Memory_荒年11 分钟前
SpringBoot事务源码深度游:从注解到数据库的“奇幻漂流”
java·后端·spring
阿里嘎多哈基米11 分钟前
速通Hot100-Day09——二叉树
算法·leetcode·二叉树·hot100