MergeSort Code is not getting submitted
here is my code:
import java.util.Scanner;
class Main{
public static void main(String args[]){
Scanner scan=new Scanner(System.in);
int N=scan.nextInt();
int array[]=new int[N];
for(int i=0;i<N;i++){
array[i]=scan.nextInt();
}
mergeSort(array, 0, N-1);
for(int i:array){
System.out.print(i+" ");
}
}
static void mergeSort(int array[],int low,int high){
if(low<high){
int mid=(low+high)/2;
mergeSort(array,low,mid);
mergeSort(array,mid+1,high);
merge(array,low,mid,high);
}
}
static void merge(int array[],int low,int mid,int high){
int i=low;
int j=mid+1;
int arr[]=new int[high-low+1];
int k=0;
while(i<=mid&&j<=high){
if(array[i]<array[j]){
arr[k]=array[i];
i++;
}
else{
arr[k]=array[j];
j++;
}
k++;
}
if(i==mid+1){
while(j<=high){
arr[k]=array[j];
k++;
j++;
}
}
else{
while(i<=mid){
arr[k]=array[i];
k++;
i++;
}
}
for(int t=low,q=0;t<=high;t++,q++){
array[t]=arr[q];
}
}
}