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

相关推荐
xxxiugou1231 分钟前
双指针解题秘籍:从入门到精通
c语言·数据结构·c++·算法
能源革命2 分钟前
TimesFM(Time Series Foundation Model)介绍
算法·能源
猎嘤一号5 分钟前
学术训练(一)文献检索与阅读
人工智能·算法·机器学习·科研入门
Doubbbbbbble云20 分钟前
多路归并算法在外部排序中的实现与优化
算法
沉淀的.晴天39 分钟前
FreeRTOS信号量
数据结构·算法
青山木1 小时前
Hot 100 --- 打家劫舍
java·数据结构·算法·leetcode·动态规划
机器学习之心1 小时前
均值、中值、圆周期:三种 InSAR 干涉相位滤波的实测对比与参数取舍
算法·均值算法
xy20262 小时前
多轮 Tool Agent 训不动?先把环境 token 从 loss 里拿掉
算法
wzdark2 小时前
多核架构下算法并行化的瓶颈与突破点4
算法·架构
阿明62 小时前
Leetcode: 283. 移动零
算法·leetcode·职场和发展