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,则两个指针一起向右移动。

相关推荐
Tutankaaa几秒前
从单场到多场并发:知识竞赛平台的弹性扩展能力
服务器·笔记·学习·职场和发展
洛水水5 分钟前
【力扣100题】26. 二叉树的中序遍历
算法·leetcode·深度优先
sheeta19986 分钟前
LeetCode 每日一题笔记 日期:2026.05.11 题目:2553. 分割数组中数字的数位
笔记·算法·leetcode
ZPC821019 分钟前
规划后的轨迹,如何发给 moveit_servo 执行
c++·人工智能·算法·3d
70asunflower21 分钟前
5.4 分布分析
人工智能·算法·机器学习·数据挖掘·数据分析
Pkmer30 分钟前
滑动窗口专题
算法
Omics Pro32 分钟前
柳叶刀|参考文献不存在
人工智能·算法·机器学习·支持向量机·自然语言处理
初心未改HD36 分钟前
机器学习之K-Means聚类算法详解
算法·机器学习·kmeans
yugi98783840 分钟前
主动噪声控制中的 FXLMS 算法研究与 MATLAB 实现
开发语言·算法·matlab
Liangwei Lin1 小时前
LeetCode 394. 字符串解码
数据结构·算法