一、题目:
给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。
二、解题思路:
如果包含0元素,将后面的元素进行覆盖,记录下标,然后利用这个下标将下标至数组尾部的元素赋值为0即可。
三、代码和结果:
class Solution {
public:
void moveZeroes(vector<int>& nums) {
int n = nums.size();
int count = 0;
for(int i = 0; i<n; i++){
if (nums[i]!=0){
nums[count] = nums[i];
count++;
}
}
while(count<n)
{
nums[count]=0;
count++;
}
}
};