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;
    }
}
相关推荐
旖-旎4 分钟前
深搜(二叉树剪枝)(3)
数据结构·c++·算法·力扣·剪枝·递归
CodeMartain4 分钟前
@SpringBootApplication 到底是什么呢?
java·spring boot·intellij-idea
流年如夢6 分钟前
结构体:定义、使用与内存布局
c语言·开发语言·数据结构·c++·算法
星秀日8 分钟前
大学生开发社区项目-CLXHXH-登录功能
java
兩尛14 分钟前
struct,union,Class,bitfield各自的作用和区别
java·开发语言
算.子15 分钟前
【Spring AI 实战】八、完整 RAG 问答实战:检索 + 重排序 + 生成全链路
java·人工智能·spring
wuminyu22 分钟前
专家视角看 Java 字节码与Class 文件格式
java·linux·c语言·jvm·c++
Gauss松鼠会26 分钟前
【openGauss】openGauss 磁盘引擎之 ustore
java·服务器·开发语言·前端·数据库·经验分享·gaussdb
lee_curry34 分钟前
线程中断,等待,唤醒与ThreadLocal
java·线程·juc·threadlocal·中断
indexsunny40 分钟前
互联网大厂Java面试实战:Spring Boot微服务与Kafka消息队列深度解析
java·spring boot·微服务·面试·kafka·消息队列·电商