力扣 LeetCode 27. 移除元素(Day1:数组)

解题思路:

注意:数组只能覆盖,不能删除

erase方法的复杂度为O( n )而不是O( 1 ),因为需要把删除后后面的数组向前移动

方法一:双层for循环暴力

方法二:快慢指针

fast表示新数组的元素

slow表示新数组元素的下标

java 复制代码
class Solution {
    public int removeElement(int[] nums, int val) {
        int slow = 0;
        for (int fast = 0; fast < nums.length; fast++) {
            if (nums[fast] != val) {
                nums[slow] = nums[fast];
                slow++;
            }
        }
        return slow;
    }
}
相关推荐
吃好睡好便好13 分钟前
矩阵的加减运算
开发语言·人工智能·学习·线性代数·算法·matlab·矩阵
吃好睡好便好20 分钟前
提取矩阵特定多行元素
开发语言·线性代数·算法·matlab·矩阵
葫三生27 分钟前
多模态视角下的一部当代东方创世史诗 ——《论三生原理》?(扩版)
人工智能·科技·算法·机器学习·开源
stsdddd35 分钟前
【YOLO算法包裹背包行李箱塑料袋包装纸盒快递盒带目标检测数据集】
算法·yolo·目标检测
洛水水39 分钟前
【力扣100题】52.最小路径和
算法·leetcode
快手技术39 分钟前
将DSA注意力引入多模态,快手Keye2.0开启强化推理新范式
算法
圣保罗的大教堂1 小时前
leetcode 3043. 最长公共前缀的长度 中等
leetcode
码之气三段.1 小时前
牛客周赛 Round 145-E(写了200行的史山)
算法·深度优先
Hwang2521 小时前
Attention-04-decoder部分
算法
devilnumber1 小时前
HAProxy 重点精讲 + 背诵记忆点(面试速记版)
面试·职场和发展