首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >移动零

移动零

作者头像
大忽悠爱学习
发布于 2021-11-15 10:12:38
发布于 2021-11-15 10:12:38
4290
举报
文章被收录于专栏:c++与qt学习c++与qt学习

法1:

代码语言:javascript
复制
class Solution {
public:
    void moveZeroes(vector<int>& nums) 
    {
        int begin = 0;
        for (int end = 0; end < nums.size(); end++)
        {
            if (nums[end] != 0)
            {
                nums[begin] = nums[end];
                begin++;
            }
        }
        for (; begin < nums.size(); begin++)
            nums[begin] = 0;
    }
};

法2:官方解法 其实就是上文法1的做法

代码语言:javascript
复制
class Solution {
public:
    void moveZeroes(vector<int>& nums) {
        int n = nums.size(), left = 0, right = 0;
        while (right < n) {
            if (nums[right]) {
                swap(nums[left], nums[right]);
                left++;
            }
            right++;
        }
    }
};
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/04/03 ,如有侵权请联系 cloudcommunity@tencent.com 删除
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档