美文网首页
283. Move Zeroes

283. Move Zeroes

作者: a_void | 来源:发表于2016-09-12 14:21 被阅读0次

    Given an array nums, write a function to move all 0's to the end of it while maintaining the relative order of the non-zero elements.

    For example, given nums = [0, 1, 0, 3, 12], after calling your function, nums should be [1, 3, 12, 0, 0].

    Note:

    • You must do this in-place without making a copy of the array.
    • Minimize the total number of operations.
    class Solution {
    public:
        void moveZeroes(vector<int>& nums) {
            int noneZeroCnt = 0;
            for(int i=0;i<nums.size();i++){
                if(0 != nums[i]){
                    nums[noneZeroCnt++] = nums[i];
                }
            }
            for(int i=noneZeroCnt;i<nums.size();i++) nums[i]=0;
        }
    };
    

    相关文章

      网友评论

          本文标题:283. Move Zeroes

          本文链接:https://www.haomeiwen.com/subject/qoupettx.html