Wednesday, March 6, 2019

[Java][Resolved] Move Zeroes

Given an array nums, write a function to move all 0's to the end of it while maintaining the relative order of the non-zero elements.
Example:
Input: [0,1,0,3,12]
Output: [1,3,12,0,0]

Note:
You must do this in-place without making a copy of the array.
Minimize the total number of operations.

Answer:

loop all non-zero numbers fill remain items with zero:
public void moveZeroes(int[] nums) {
  int i=0;
  for(int num: nums){
    if(num !=){
      nums[i++] = num;
    }
  }
  while(i<nums.length){
    nums[i++]=0;
  }
}

No comments :

Post a Comment