力扣 283. 移动零

57 阅读1分钟

🔗 leetcode.cn/problems/mo…

题目

  • 给定数组,把其中的 0 元素挪到末尾,其余数组的顺序保持相对位置不变

思路

  • two pointer 覆盖写

代码

class Solution {
public:
    void moveZeroes(vector<int>& nums) {
        int curr_index = 0;
        for (int i = 0; i < nums.size(); i++) {
            if (nums[i] != 0) 
                nums[curr_index++] = nums[i];
        }
        for (int i = curr_index; i < nums.size(); i++) {
            nums[i] = 0;
        }
    }
};