package sort; import java.util.Arrays; /** * Created by gch on 2017-08-15. */ public class QuickSort { public static void main(String[] args) { int[] arr = {9,8,7,6,4,4,3,2,1}; quickSort(arr,0,arr.length-1); System.out.print(Arrays.toString(arr)); } public static void quickSort(int[] arr,int low,int high){ if(low > high){ return; } int mid = partition(arr,low,high); quickSort(arr,low,mid-1); quickSort(arr,mid+1,high); } public static int partition(int[] arr,int low,int high){ int key = arr[low]; while(low < high){ while(high > low && arr[high] >= key){ high--; } arr[low] = arr[high]; while (low < high && arr[low] < key){ low++; } arr[high] = arr[low]; } arr[low] = key; return low; } }