You are on page 1of 1

package quick;

import java.util.Arrays;

public class quicksort {

public static void main(String[] args) {


int [] asd = {9,3,1,2,5,6,8,4};
quickSort(asd,0,asd.length-1);
System.out.println(Arrays.toString(asd));
}

public static void quickSort(int [] array, int start, int end) {


if(end <= start) return;
int pivot = partition(array,start,end);
quickSort(array,start, pivot-1);
quickSort(array,pivot + 1, end);

public static int partition(int [] array, int start, int end) {


int pivot = array[end];
int i = start - 1;
for(int j = start; j <= end - 1; j++) {
if(array[j] < pivot) {
i++;
int temp = array[i];
array[i] = array[j];
array[j] = temp;
}
}
i++;
int temp = array[i];
array[i] = array[end];
array[end] = temp;
return i;
}
}

You might also like