Given an array A, push all the zeros of the array to the front. The order of all other elements should remain same. Write a function: void pushZero(int[] A) that accepts an integer array A. The function should convert the original array as per above requirement. Input: 10 2 0 3 4 0 4 0 10 9 0 where, First line represents size of an array N. Second line represents array elements. There must be single space between each element. There should be one space after the last element. Output: 0 0 0 0 2 3 4 4 10 9 There must be single space between each element of output array. There should be one space after the last element. N is an integer within the range [1 to 1,000,000].
Write in Java.
Given an array A, push all the zeros of the array to the front. The order of all other elements should remain same.
Write a function:
void pushZero(int[] A)
that accepts an integer array A. The function should convert the original array as per above requirement.
Input:
10
2 0 3 4 0 4 0 10 9 0
where,
- First line represents size of an array N.
- Second line represents array elements. There must be single space between each element.
- There should be one space after the last element.
Output:
0 0 0 0 2 3 4 4 10 9
- There must be single space between each element of output array.
- There should be one space after the last element.
- N is an integer within the range [1 to 1,000,000].
import java.util.Arrays;
class Main
{
public static void pushZero(int[] A)
{
int current = A.length - 1;
for (int i = A.length - 1; i >= 0; i--) {
if (A[i] != 0) {
A[current] = A[i];
current--;
}
}
while (current >= 0) {
A[current] = 0;
current--;
}
}
public static void main(String[] args)
{
int[] A = {2, 0, 3, 4, 0, 4, 0, 10, 9, 0 };
pushZero(A);
System.out.println(Arrays.toString(A));
}
}
Trending now
This is a popular solution!
Step by step
Solved in 3 steps with 2 images