力扣283. 移动零

给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。

请注意 ,必须在不复制数组的情况下原地对数组进行操作。

示例 1: 输入: nums =[0,1,0,3,12] 输出:[1,3,12,0,0]

示例 2: 输入: nums =[0] 输出:[0]

cpp 复制代码
class Solution {
public:
    void moveZeroes(vector<int>& nums) {
        int i=0;//指针i表示坑位,指针j表示枚举元素
        for(int j=0;j<nums.size();j++){
            //当前元素不为0则可以放进坑位
            if(nums[j]){nums[i++]=nums[j];}
        }
        //将后面的元素都置0
        for(;i<nums.size();i++){nums[i]=0;}
    }
};
相关推荐
踩坑记录15 小时前
leetcode hot100 3.无重复字符的最长子串 medium 滑动窗口(双指针)
python·leetcode
Z1Jxxx15 小时前
01序列01序列
开发语言·c++·算法
汽车仪器仪表相关领域16 小时前
全自动化精准检测,赋能高效年检——NHD-6108全自动远、近光检测仪项目实战分享
大数据·人工智能·功能测试·算法·安全·自动化·压力测试
Doro再努力16 小时前
【数据结构08】队列实现及练习
数据结构·算法
清铎18 小时前
leetcode_day12_滑动窗口_《绝境求生》
python·算法·leetcode·动态规划
linweidong18 小时前
嵌入式电机:如何在低速和高负载状态下保持FOC(Field-Oriented Control)算法的电流控制稳定?
stm32·单片机·算法
踩坑记录18 小时前
leetcode hot100 42 接雨水 hard 双指针
leetcode
net3m3318 小时前
单片机屏幕多级菜单系统之当前屏幕号+屏幕菜单当前深度 机制
c语言·c++·算法
mmz120718 小时前
二分查找(c++)
开发语言·c++·算法