283. Move Zeroes LeetCode Solution

In this guide, you will get 283. Move Zeroes LeetCode Solution with the best time and space complexity. The solution to Move Zeroes problem is provided in various programming languages like C++, Java, and Python. This will be helpful for you if you are preparing for placements, hackathons, interviews, or practice purposes. The solutions provided here are very easy to follow and include detailed explanations.

Table of Contents

  1. Problem Statement
  2. Complexity Analysis
  3. Move Zeroes solution in C++
  4. Move Zeroes solution in Java
  5. Move Zeroes solution in Python
  6. Additional Resources
283. Move Zeroes LeetCode Solution image

Problem Statement of Move Zeroes

Given an integer array nums, move all 0’s to the end of it while maintaining the relative order of the non-zero elements.
Note that you must do this in-place without making a copy of the array.

Example 1:
Input: nums = [0,1,0,3,12]
Output: [1,3,12,0,0]
Example 2:
Input: nums = [0]
Output: [0]

Constraints:

1 <= nums.length <= 104
-231 <= nums[i] <= 231 – 1

Follow up: Could you minimize the total number of operations done?

Complexity Analysis

  • Time Complexity: O(n)
  • Space Complexity: O(1)

283. Move Zeroes LeetCode Solution in C++

class Solution {
 public:
  void moveZeroes(vector<int>& nums) {
    int i = 0;
    for (const int num : nums)
      if (num != 0)
        nums[i++] = num;

    while (i < nums.size())
      nums[i++] = 0;
  }
};
/* code provided by PROGIEZ */

283. Move Zeroes LeetCode Solution in Java

class Solution {
  public void moveZeroes(int[] nums) {
    int i = 0;
    for (final int num : nums)
      if (num != 0)
        nums[i++] = num;

    while (i < nums.length)
      nums[i++] = 0;
  }
}
// code provided by PROGIEZ

283. Move Zeroes LeetCode Solution in Python

class Solution:
  def moveZeroes(self, nums: list[int]) -> None:
    j = 0
    for num in nums:
      if num != 0:
        nums[j] = num
        j += 1

    for i in range(j, len(nums)):
      nums[i] = 0
# code by PROGIEZ

Additional Resources

Happy Coding! Keep following PROGIEZ for more updates and solutions.