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

相关推荐
codeの诱惑13 小时前
推荐算法(二):核心概念——余弦定理 & 余弦相似度
算法·机器学习·推荐算法
liuyao_xianhui13 小时前
优选算法_锯齿形层序遍历二叉树_队列_C++
java·开发语言·数据结构·c++·算法·链表
秃头狂魔13 小时前
【HOT100】DAY2
python·算法
想带你从多云到转晴13 小时前
03、数据结构与算法--单向链表
java·数据结构·算法
程序员三藏13 小时前
接口自动化测试思路和实战:编写线性测试脚本实战
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
mjhcsp13 小时前
AT_arc205_c [ARC205C] No Collision Moves 题解
开发语言·c++·算法·题解
Yzzz-F13 小时前
Problem - 1114C - Codeforces[勒让德公式]
算法
热水过敏13 小时前
前路迷茫,再次起航
笔记·程序人生·职场和发展
木井巳14 小时前
【笔试强训】Day1
java·算法
leiming614 小时前
巧用 FreeRTOS 任务通知作“邮箱”:NeoPixel 灯环控制实战
java·前端·算法