Quick sort tle error

import java.util.*;

class Main
{
public static int N = 5;
public static int[] arr = new int[N];

void random(int low,int high) 
{ 
  
    Random rand= new Random(); 
    int pivot = rand.nextInt(high-low) + low; 
      
    int temp1=arr[pivot]; 
    arr[pivot]=arr[high]; 
    arr[high]=temp1; 
} 
  

int partition(int arr[], int low, int high)  
{  
  
    int pivot = arr[high];  
  

    int i = (low-1);
    for (int j = low; j < high; j++)  
    {  
  
        if (arr[j] <= pivot)  
        {  
            i++;  

          
            int temp = arr[i];  
            arr[i] = arr[j];  
            arr[j] = temp;  
        }  
    }  


    int temp = arr[i+1];  
    arr[i+1] = arr[high];  
    arr[high] = temp;  

    return i+1;  
}  



void sort(int arr[], int low, int high)  
{  
    if (low < high)  
    {  
  
        int pi = partition(arr, low, high);  

    
        sort(arr, low, pi-1);  
        sort(arr, pi+1, high);  
    }  
}  


static void printArray(int arr[])  
{  
    int n = arr.length;  
    for (int i = 0; i < n; ++i)  
        System.out.print(arr[i]+" ");  
    System.out.println();  
}  


public static void main(String args[])  
{  
    Scanner s=new Scanner(System.in);
    int n=s.nextInt();

  int arr[]=new int[n];
for(int i=0;i<n;i++){
    arr[i]=s.nextInt();
}  

   Main ob = new Main();  
    ob.sort(arr, 0, n-1);  

    
    printArray(arr);  
}  

}

can you tell me why there is a tle error coming I am not able to understand the error

@saurabhananta,
You have to use randomized quicksort as said in the question.
https://ide.codingblocks.com/s/197131 here is the correct code

I hope I’ve cleared your doubt. I ask you to please rate your experience here
Your feedback is very important. It helps us improve our platform and hence provide you
the learning experience you deserve.

On the off chance, you still have some questions or not find the answers satisfactory, you may reopen
the doubt.