leetcode 283 Move Zeros
记录0的个数
有两种实现方法
1)保证index之后都是0
index初值为nums.length
碰到0就swap(i, index)
注意!别忘了i减一,以防漏掉这种情况:换过来的index所指元素值为0
2)保证index之前没有0
index初值为0
碰到不是0就将当前nums[i] 赋值给nums[index]
然后index~n-1补0
1 class Solution { 2 public void moveZeroes(int[] nums) { 3 int len = nums.length; 4 int i = 0; 5 6 for(int num : nums){ 7 if(num != 0){ 8 nums[i++] = num; 9 } 10 } 11 while(i < len){ 12 nums[i++] = 0; 13 } 14 } 15 }