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的元素的个数

相关推荐
Jia ming2 分钟前
C语言实现日期天数计算
c语言·开发语言·算法
阿维的博客日记3 分钟前
为什么会增加TreeMap和TreeSet这两类,有什么核心优势吗?可以解决什么核心痛点?
java·treeset·treemap
dllxhcjla11 分钟前
黑马头条1
java
宠友信息14 分钟前
一套基于uniapp+springboot完整社区系统是如何实现的?友猫社区源码级功能解析
java·spring boot·后端·微服务·微信·uni-app
humors22125 分钟前
各厂商工具包网址
java·数据库·python·华为·sdk·苹果·工具包
无限进步_34 分钟前
【C++&string】大数相乘算法详解:从字符串加法到乘法实现
java·开发语言·c++·git·算法·github·visual studio
苏纪云1 小时前
蓝桥杯考前突击
c++·算法·蓝桥杯
W23035765731 小时前
经典算法详解:最长公共子序列 (LCS) —— 从暴力递归到动态规划完整实现
算法·动态规划·最长子序列
海兰1 小时前
使用 Spring AI 打造企业级 RAG 知识库第二部分:AI 实战
java·人工智能·spring
pzx_0011 小时前
【优化器】 随机梯度下降 SGD 详解
人工智能·python·算法