Challenge problem

can anyone tell me what is wrong in this code?

import java.util.*;

public class Main {

static Scanner scn = new Scanner(System.in);
public static void main(String args[]) {
    int n = scn.nextInt();
	int[] arr = null;
	if (n >= 1 && n <= 100) {
		arr = take_input(n);
		arr = sorting_linear_time(arr);
		int j;
		for (j = 0; j < n; j++) {
			System.out.println(arr[j]);
		}
	}
}
public static int[] take_input(int n) {
	// int n = scn.nextInt();
	int[] arr = new int[n];
	for (int i = 0; i < n; i++) {
		int tmp = scn.nextInt();
		if (tmp >= -100000 && tmp <= 100000) {
			arr[i] = tmp;
		}
	}
	return arr;
}

public static int[] sorting_linear_time(int[] arr) {
	int low = 0, mid = 0, high = arr.length - 1;
	while (mid <= high) {
		if (arr[mid] == 0) {
			arr = swap(low, mid, arr);
			low++;
			mid++;
		} else if (arr[mid] == 1) {
			mid++;
		} else {
			arr = swap(mid, high, arr);
			high--;
		}
	}
	return arr;
}

public static int[] swap(int x, int y, int[] arr) {
	int tmp = arr[x];
	arr[x] = arr[y];
	arr[y] = tmp;
	return arr;
}

}

@VinayakSingh11111 lemme review bro!

Bro have you reviewed the constraints, n is upto 10^6 it will not go into your if. And why do you add these unnecessary statements, obviously they will be giving inputs in given constraint range.

import java.util.*;
public class Main {
static Scanner scn = new Scanner(System.in);
public static void main(String args[]) {
int n = scn.nextInt();
int[] arr = null;
arr = take_input(n);
arr = sorting_linear_time(arr);
int j;
for (j = 0; j < n; j++) {
System.out.println(arr[j]);
}
}
public static int[] take_input(int n) {
// int n = scn.nextInt();
int[] arr = new int[n];
for (int i = 0; i < n; i++) {
int tmp = scn.nextInt();
if (tmp >= -100000 && tmp <= 100000) {
arr[i] = tmp;
}
}
return arr;
}

public static int[] sorting_linear_time(int[] arr) {
	int low = 0, mid = 0, high = arr.length - 1;
	while (mid <= high) {
		if (arr[mid] == 0) {
			swap(low, mid, arr);
			low++;
			mid++;
		} else if (arr[mid] == 1) {
			mid++;
		} else {
			swap(mid, high, arr);
			high--;
		}
	}
	return arr;
}

public static void swap(int x, int y, int[] arr) {
	int tmp = arr[x];
	arr[x] = arr[y];
	arr[y] = tmp;
}

}
So your query is resolved close this doubt by marking it resolved and rate full!