数组:移除元素

参考资料:代码随想录

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

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;
    }
}
相关推荐
天赐学c语言7 分钟前
1.20 - x的平方根 && vector的扩容机制以及删除元素是否会释放内存
c++·算法·leecode
未若君雅裁16 分钟前
SpringAI基础入门
java·spring boot·ai
CC.GG23 分钟前
【C++】用哈希表封装myunordered_map和 myunordered_set
java·c++·散列表
a努力。1 小时前
字节Java面试被问:TCP的BBR拥塞控制算法原理
java·开发语言·python·tcp/ip·elasticsearch·面试·职场和发展
jiaguangqingpanda1 小时前
Day24-20260120
java·开发语言·数据结构
52Hz1181 小时前
力扣24.两两交换链表中的节点、25.K个一组反转链表
算法·leetcode·链表
老鼠只爱大米1 小时前
LeetCode经典算法面试题 #160:相交链表(双指针法、长度差法等多种方法详细解析)
算法·leetcode·链表·双指针·相交链表·长度差法
一个龙的传说1 小时前
xshell下载
java
ValhallaCoder1 小时前
Day53-图论
数据结构·python·算法·图论
老鼠只爱大米1 小时前
LeetCode经典算法面试题 #84:柱状图中最大的矩形(单调栈、分治法等四种方法详细解析)
算法·leetcode·动态规划·单调栈·分治法·柱状图最大矩形