leetcode链接
代码实现
class Solution {
public void moveZeroes(int[] nums) {
int slow = 0;
for (int i = 0; i < nums.length; i++) {
if (nums[i]!=0){
nums[slow] = nums[i];
slow++;
}
}
for (int i = slow; i < nums.length; i++) {
nums[i] = 0;
}
}
}
这题比较简单通过双指针进行实现,从头遍历,每次交换非0数字,最后遍历慢指针将后面的元素全部修改为0即可。