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;
    }
}
相关推荐
惜茶7 小时前
vue+SpringBoot(前后端交互)
java·vue.js·spring boot
Liudef067 小时前
后量子密码学(PQC)深度解析:算法原理、标准进展与软件开发行业的影响
算法·密码学·量子计算
杰克尼7 小时前
springCloud_day07(MQ高级)
java·spring·spring cloud
OYpBNTQXi8 小时前
SEAL全同态加密CKKS方案入门详解
算法·机器学习·同态加密
NHuan^_^9 小时前
SpringBoot3 整合 SpringAI 实现ai助手(记忆)
java·人工智能·spring boot
蚂蚁数据AntData9 小时前
破解AI“机器味“困境:HeartBench评测实践详解
大数据·人工智能·算法·机器学习·语言模型·开源
ZC跨境爬虫9 小时前
Python异步IO详解:原理、应用场景与实战指南(高并发爬虫首选)
爬虫·python·算法·自动化
Mr_Xuhhh9 小时前
从ArrayList到LinkedList:理解链表,掌握Java集合的另一种选择
java·数据结构·链表
倦王9 小时前
力扣日刷47-补
python·算法·leetcode
错把套路当深情9 小时前
Java 全方向开发技术栈指南
java·开发语言