public static void Main (string[] args) {//test sort Random r = new random (); int arr[] = NE W int[10];for (int i=0;i<10;i++) {Arr[i] = r.nextint (100);} System.out.println ("before sort"); for (int i:arr) {System.out.print (i+ ",");} Fastsort (arr, 0, arr.length-1); System.out.println ("after Sort"), for (int i:arr) {System.out.print (i+ ",");}} public static void Fastsort (int[] arr, int left, int. right) {/** * I when looking from the right side of index * J when looking for index * TMP exchange data, temporary variable * baseval interchange Benchmark values For comparison */int I, J, TMP, Baseval;if (left > right) {return;} Baseval = Arr[left];i = Left;j = Right;while (i! = j) {//I and J are not the same, then do the following//to first right-to-left look while (Arr[j] >= baseval && I < J) {//until a value larger than baseval is found j--;} Then look left to right while (Arr[i] <= baseval && i < J) {//until a value smaller than baseval is found i++;} Swap the position of two numbers in the array if (I < j) {tmp = Arr[i];arr[i] = arr[j];arr[j] = tmp;}} Finally, the benchmark is arr[left] = arr[i];arr[i] = baseval;//recursion gets the left and right sort results fastsort (arr, leave, i-1); Fastsort (arr, i + 1, right);}
A simple example of using Java to implement quick sorting