## [283\. Move Zeroes](https://leetcode.com/problems/move-zeroes/)
Given an integer array `nums`, move all `0`'s to the end of it while maintaining the relative order of the non-zero elements.
**Note** that you must do this in-place without making a copy of the array.
**Example 1:**
**Input:** nums = \[0,1,0,3,12\]
**Output:** \[1,3,12,0,0\]
**Example 2:**
**Input:** nums = \[0\]
**Output:** \[0\]
**Constraints:**
- `1 <= nums.length <= 104`
- `-231 <= nums[i] <= 231 - 1`
```cpp=
class Solution {
public:
void moveZeroes(vector<int>& nums) {
int k = 0;
for (int i = 0; i < nums.size(); i++) {
if (nums[i] != 0) {
nums[k] = nums[i];
k++;
}
}
for (int i = k; i < nums.size(); i++) {
nums[i] = 0;
}
}
};
```
:::success
- 時間複雜度:$O(N)$
- 空間複雜度:$O(1)$
:::