Leetcode 移除元素

使用双指针来解决此问题,一个遍历指针 i,一个 k 指针,k 指针初始从第一个元素开始,当遇到当前数组元素 numsi 不等于 val 时,我们就把 numsi 挪到 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 分钟前
SpringMVC 到底是怎么干活的?
java·网络·职场和发展
鶴哥只手遮天6 分钟前
Spring Framework 7.0.9 深度剖析-05-配置元数据解析:XML、注解与 JavaConfig
java·后端·开源
NGINX开源社区13 分钟前
与我们交流:NGINX Gateway Fabric 与 NGINX Ingress Controller 社区会议
java·服务器·前端
鶴哥只手遮天16 分钟前
Spring Framework 7.0.9 深度剖析-16-异步与调度
java·后端·开源
十年Java程序媛24 分钟前
Java 多线程基础与锁机制|进程线程、synchronized、volatile、Lock 面试全梳理
java·spring boot·面试
弈栈录24 分钟前
大模型服务抽象:兼容 OpenAI、通义千问与本地模型
java·后端·架构
UIU11425 分钟前
P1003 [NOIP 2011 提高组] 铺地毯
数据结构·c++·算法
爱读书的小胖29 分钟前
LeetCode 88. 合并两个有序数组 C 解题分析
c语言·数据结构·算法
鶴哥只手遮天32 分钟前
Spring Framework 7.0.9 深度剖析-06-Bean 生命周期与依赖注入原理
java·后端·开源
唐钰小宝B40 分钟前
深度解读 JDK 8、JDK 11、JDK 17 和 JDK 21 的区别
java·开发语言·windows