public class Solution {
    public void moveZeroes(int[] nums) {
        int start = 0;
        for (int n: nums) {
            if (n != 0) {
                nums[start] = n;
                start++;
            }
        }

        for (; start < nums.length; start++) {
            nums[start] = 0;
        }
    }
}

@@ -66,16 +66,21 @@
         
+for (
 int star
@@ -88,34 +88,37 @@
  = 0
-;%0A        for (int n: nums
+, i = 0; i %3C nums.length; i++
 ) %7B%0A
@@ -134,16 +134,22 @@
    if (n
+ums%5Bi%5D
  != 0) %7B
@@ -156,32 +156,42 @@
 %0A               
+ int tmp =
  nums%5Bstart%5D = n
@@ -186,20 +186,16 @@
 s%5Bstart%5D
- = n
 ;%0A      
@@ -208,30 +208,32 @@
     
+nums%5B
 start++
-;%0A            %7D
+%5D = nums%5Bi%5D;
 %0A   
@@ -241,19 +241,16 @@
     
-%7D%0A%0A
         
 for 
@@ -249,75 +249,36 @@
     
-for (; start %3C nums.length; start++) %7B%0A            nums%5Bstart%5D = 0;
+nums%5Bi%5D = tmp;%0A            %7D
 %0A   

optimize #283