283. 移动零

image.png

快慢指针法

执行用时:0 ms, 在所有 Java 提交中击败了100.00%的用户 内存消耗:39 MB, 在所有 Java 提交中击败了8.32%的用户

  1. class Solution {
  2. // 把非 0 的元素往前移,后面补 0 即可
  3. public void moveZeroes(int[] nums) {
  4. int slowIdx = 0;
  5. for (int fastIdx = 0; fastIdx < nums.length; fastIdx ++) {
  6. if (nums[fastIdx] != 0) {
  7. nums[slowIdx ++] = nums[fastIdx];
  8. }
  9. }
  10. while (slowIdx < nums.length) {
  11. nums[slowIdx ++] = 0;
  12. }
  13. }
  14. }