
									 Problem
								
								
									 Solution
								
								
									 Submissions
								
								
							Move Zeroes
								Certification: Basic Level
								Accuracy: 100%
								Submissions: 1
								Points: 5
							
							Write a C program to move all zeros to the end of an array. Given an integer 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. You must do this in-place without making a copy of the array.
Note that you must modify the array in-place and not allocate extra space for another array.
Example 1
- Input: nums = [0,1,0,3,12]
 - Output: [1,3,12,0,0]
 - Explanation:
We need to move all zeros to the end while keeping the order of non-zero elements.
Starting with [0,1,0,3,12], after moving all non-zero elements to the front and filling the rest with zeros, we get [1,3,12,0,0]. 
Example 2
- Input: nums = [0]
 - Output: [0]
 - Explanation: 
Array contains only one element which is already 0.
No changes needed as zero is already at the end. 
Constraints
- 1 ≤ nums.length ≤ 10^4
 - -2^31 ≤ nums[i] ≤ 2^31 - 1
 - You must perform operations in-place with O(1) extra memory
 - Time Complexity: O(n) where n is the length of the array
 - Space Complexity: O(1)
 
Editorial
									
												
My Submissions
										All Solutions
									| Lang | Status | Date | Code | 
|---|---|---|---|
| You do not have any submissions for this problem. | |||
| User | Lang | Status | Date | Code | 
|---|---|---|---|---|
| No submissions found. | ||||
Solution Hints
- Use a two-pointer approach to solve this problem
 - Keep track of the position where the next non-zero element should be placed
 - Iterate through the array, moving non-zero elements to their correct positions
 - After placing all non-zero elements, fill the remaining positions with zeros
 - Make sure you don't create unnecessary swaps if the element is already in the correct position