Leetcode 移除元素

使用双指针来解决此问题,一个遍历指针 i,一个 k 指针,k 指针初始从第一个元素开始,当遇到当前数组元素 nums[i] 不等于 val 时,我们就把 nums[i] 挪到 k 指针的位置上,然后 k 右移一位。

java 代码

java 复制代码
class Solution {
    public int removeElement(int[] nums, int val) {
        int k = 0;

        for(int i = 0; i < nums.length; ++i) {
            if(nums[i] != val) {
                nums[k++] = nums[i];
            }
        }
        return k;
    }
}
相关推荐
金銀銅鐵1 分钟前
[Java] 观察 CompactStrings 选项的影响
java·后端
是2的10次方啊2 分钟前
🎯 HashMap源码深度解析:从"图书馆"到"智能仓库"的进化史
java
paopaokaka_luck5 分钟前
绿色环保活动平台(AI问答、WebSocket即时通讯、协同过滤算法、Echarts图形化分析)
java·网络·vue.js·spring boot·websocket·网络协议·架构
玉衡子9 分钟前
四、索引优化实战
java·后端
橘子1313 分钟前
递归,搜索与回溯算法
算法
在路上`17 分钟前
前端学习之后端java小白(二)-sql约束/建表
java·sql·学习
我真的是大笨蛋21 分钟前
JVM 四大晋升机制
java·jvm
黄贵根25 分钟前
C++20 基于文本文件的类对象增删查改系统
算法·c++20
木心爱编程28 分钟前
C++20多线程新特性:更安全高效的并发编程
java·jvm·c++20
ljf883828 分钟前
Java导出复杂excel,自定义excel导出
java·开发语言·excel