Monday, 4 October 2021

Move Zeros

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.
For example, given nums = [0, 1, 0, 3, 12], after calling your function, nums should be [1, 3, 12, 0, 0].
Note:
  1. You must do this in-place without making a copy of the array.
  2. Minimize the total number of operations.


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
void moveZeroes(int* nums, int numsSize){
    int i = 0, j = 0;
    for(i = 0; i < numsSize; i++){
        //copy non-zero elements
        if(nums[i] != 0){
            nums[j] = nums[i];
            j++;
        }
    }
    //put zeros in the end
    while(j < numsSize){
        nums[j++] = 0;
    }
}
Share:

2 comments:

  1. Nice Blog! I really loved reading through this Blog... Thanks for sharing.......
    Awesome Blog thanks for share your valuable information

    Inwizards Technology - Internet of Things IoT

    iot development company
    hire iot developer

    ReplyDelete
  2. The moveZeroes function efficiently moves all zeros to the end of the array while maintaining the order of non-zero elements. Using FlareSolverr, you can explore more optimized solutions or variations for this Leetcode problem.

    ReplyDelete

Contact Me

Name

Email *

Message *

Popular Posts