自学内容网 自学内容网

移动0【双指针】

移动零
在这里插入图片描述
cur每次走一步,dest走不走取决于cur有没有找到非0值,一旦找打非0值,交换。不是非0值,dest不动。==》【非零,dest】【dest,0】

class Solution {
public:
    void moveZeroes(vector<int>& nums) 
    {
        for(int cur = 0, dest = -1; cur < nums.size(); cur++)
        { 
            if(nums[cur]!=0) // 处理⾮零元素
                swap(nums[++dest], nums[cur]);
        }
    }
};

原文地址:https://blog.csdn.net/LHRan_ran_/article/details/136996666

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!