数组:移除元素

参考资料:代码随想录

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

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;
    }
}
相关推荐
云泽8087 小时前
笔试算法 -位运算篇(二):从唯一字符到消失数字
c++·算法·位运算
ʚ希希ɞ ྀ7 小时前
不同路径|| -- dp
算法
ZhengEnCi7 小时前
01-如何监听接口调用情况?
java·spring boot·后端
IT 行者8 小时前
SimHash 与 MinHash:相似性计算的双子星算法
算法·hash·比对
智者知已应修善业8 小时前
【51单片机8位数码管动态显示日期小数点风格】2023-11-13
c++·经验分享·笔记·算法·51单片机
智者知已应修善业8 小时前
【51单片机有三个LED 分别第一个灯闪三下 再到第二个灯又闪三下 再到第三个灯又闪三下 就这样循环程序】2023-11-16
c++·经验分享·笔记·算法·51单片机
JAVA面经实录9178 小时前
MyBatis学习体系
java·mybatis
java1234_小锋8 小时前
在 Spring AI 中如何实现函数调用(Function Calling)?请说明其基本原理和应用场景。
java·人工智能·spring
小马爱打代码9 小时前
Spring源码 第九篇:Spring 5 源码深度拆解 - Spring 事件驱动模型
java·后端·spring