解题思路:
双指针
指针 i 用于寻找不为零的位置
指针 j 用于寻找为零的位置
不为零时,自己与自己交换,i 和 j 同时向下一个位置移动
为零时,nums[ i ]与nums[ j ]交换,使零向后移动
class Solution {public void moveZeroes(int[] nums) {if (nums == null) return; int j = 0;for (int i = 0; i < nums.length; i++) {if (nums[i] != 0) {int tmp = nums[i];nums[i] = nums[j];nums[j++] = tmp;}}}
}