LeetCode算法学习之移除元素

完整实现代码:

java 复制代码
class Solution {
    public int removeElement(int[] nums, int val) {
        int k = 0; // 记录不等于 val 的元素个数
        for (int i = 0; i < nums.length; i++) {
            if (nums[i] != val) {
                nums[k] = nums[i]; // 将非 val 元素移到前面
                k++;
            }
        }
        return k;
    }
}

解题思路:

基本思路就是遍历数组,把不等于val的元素移动到数组的前边,最后返回不等于val的元素个数就可以了

代码实现:首先定义一个k用来记录不等于val的元素个数,遍历数组,判断当前元素与val是否相同,如果不同就交换k索引对应的元素和当前元素的位置,然后k++,继续下一次操作,最后k的值就是数组中不等于val的元素的个数

相关推荐
en.en..1 分钟前
Linux mmap 内存映射深度解析:基于帧缓冲 /dev/fb0
java·服务器·前端
洋不写bug4 分钟前
链表补充练习,双链表的模拟实现
java·数据结构·链表·双链表·底层实现
residual_fan5 分钟前
持续对比强化学习(Continual Contrastive Reinforcement Learning)论文分享
人工智能·算法·数据挖掘·数据分析
后台模板学习7 分钟前
用 IM 即时聊天项目一次讲清消息去重算法的踩坑与解决方案
java·数据库·spring
秋名RG9 分钟前
2026/6/15 系统故障复盘与整改方案
java·架构
今天要早睡_11 分钟前
C++ 核心语法速过:命名空间、引用、函数重载与 nullptr 深度解析
android·java·c++
南讯股份Nascent15 分钟前
2026年CRM技术选型观察:当“数据打通“成为第一需求,电商CRM的架构价值在哪里
java·大数据·用户运营
心易行者20 分钟前
Python自动化测试7步落地法:用python在线运行省掉90%环境配置时间
java·开发语言·人工智能·python·log4j·ai编程
s_w.h21 分钟前
【 计网 】序列化与反序列化
linux·服务器·网络·算法·bash
信奥卷王42 分钟前
2025年09月GESPC++五级真题解析(含视频)
算法