LeetCode 283. 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.


Input: [0,1,0,3,12]
Output: [1,3,12,0,0]


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


Use a temp array to store the element in rotating order

Python Solution

class Solution:
    def moveZeroes(self, nums: List[int]) -> None:
        Do not return anything, modify nums in-place instead.
        i = 0
        j = 0
        for j in range(0, len(nums)):
            if nums[j] != 0:
                temp = nums[i] 
                nums[i] = nums[j]
                nums[j] = temp
                i = i + 1
  • Time complexity: O(N).
  • Space complexity: O(1).

One Thought to “LeetCode 283. Move Zeroes”

Leave a Reply

Your email address will not be published. Required fields are marked *