nums.length를 신경쓴다. 뒤에 오는 값들을 앞으로 모두 보낸 후, 맨 뒤를 0의 개수만큼 0으로 마스킹한다.
Time complexity:O(n)
Space complexity: O(1)
class Solution {
public void moveZeroes(int[] nums) {
int count = 0;
// int buff = 0;
for (int i = 0; i < nums.length; i++){
if (nums[i] != 0){
nums[i-count] = nums[i];
}else if (nums[i] == 0){
count++;
}
}
for (int i = 0; i < count; i++){
nums[nums.length - i - 1] = 0;
}
}
}