第二种: 第一种的变种, 需要考虑的顺序
直接覆盖法, 直接将找的非零往前覆盖,最后将后续的值用0填充。
public void moveZeroes(int[] nums) {
int i = 0, j = 0;
for (; i < nums.length; i ++){
if (nums[i] != 0){
// 如果该值不为零, 直接覆盖, 有零的话会出现异步
nums[j++] = nums[i];
}
}
// 减一复位, 需要吗? 不需要啊
for (; j < nums.length; j ++){
nums[j] = 0;
}
}