1. import java.util.Arrays;
    2. /**
    3. * @author zhangshuai
    4. * @date 2022-06-13 13:37
    5. */
    6. public class QuickSort {
    7. public static void main(String[] args) {
    8. int[] arr = {6, 1, 2, 7, 9, 3, 4, 5, 10, 8};
    9. quickSort(arr, 0, arr.length - 1);
    10. System.out.println(Arrays.toString(arr));
    11. }
    12. public static void quickSort(int[] arr,int left,int right){
    13. if(left < right){
    14. int pivot = partition(arr,left,right);
    15. quickSort(arr,left,pivot-1);
    16. quickSort(arr,pivot+1,right);
    17. }
    18. }
    19. private static int partition(int[] arr,int left,int right){
    20. int pivot = arr[right];
    21. int i = left -1;
    22. for(int j=left;j<right;j++){
    23. if(arr[j]<pivot){
    24. i++;
    25. swap(arr,i,j);
    26. }
    27. }
    28. swap(arr,i+1,right);
    29. return i+1;
    30. }
    31. private static void swap(int[] arr,int i,int j){
    32. int temp = arr[i];
    33. arr[i] = arr[j];
    34. arr[j] = temp;
    35. }
    36. }