Leetcode-hot100-283.移动零

cpp 复制代码
class Solution {
public:
    void moveZeroes(vector<int>& nums) {
        int l=0,r=0;
        while(r<nums.size())
        {
            if(nums[r])
            {
                swap(nums[l],nums[r]);
                l++;
            }r++;
            
        }
    }
};

双指针算法,一个指针指在左边不动,如果这个指的是0的话,则另一个指针向右移动,一直找到不是0的位置,交换两者数据,两个指针右移;如果第一个指针指的不是0,则两个指针一起向右移动。

相关推荐
做运维的阿瑞22 分钟前
多表查询基础:INNER JOIN、LEFT JOIN、RIGHT JOIN
数据库·sql·mysql·算法
大侠归来1 小时前
C语言素数判断:从入门到进阶
java·c语言·算法
v:PLLucky201 小时前
农作物病虫害检测识别系统
深度学习·scrapy·算法·百度·微信公众平台
朝朝辞暮i1 小时前
C++ 第一阶段总结:从零基础到 ROS2 前置语法
开发语言·c++·算法
H.莓飛2 小时前
【数据结构】链表_OJ题
linux·数据结构·算法·链表
All for pursuit.2 小时前
【回溯-4】46.全排列
数据结构·c++·算法·leetcode
小鱼~~2 小时前
Recall@K、Precision@K、MRR、nDCG@K简介
人工智能·算法·机器学习
在所不辞兄2 小时前
【零基础学智能仿真-38】从规则矩形到带孔薄板:Gmsh 网格与 FEniCSx 联合求解
人工智能·深度学习·算法·机器学习·工程仿真
一木 之林2 小时前
DDPM扩散模型代码实战:前向加噪造数据、U-Net噪声预测与反向生成手写数字
人工智能·算法·计算机视觉
嘎嘎风3 小时前
MiniMind 学习笔记之 02 字是怎么变成数字的?
算法