快排 选取pivot 确定位置 重复确定 package main; import java.util.Scanner; public class QuickSort { public static void main(String[] args) { Scanner in = new Scanner(System.in); while (true){ int len = in.nextInt(); int[] nums = new int[len]; for (int i = 0; i < len; i++) { nums[i] = in.nextInt(); } quickSort(nums,0,len-1); for (int i: nums ) { System.out.print(i + " "); } } } private static void quickSort(int[] nums, int l, int r) { if(l < r){ int partitionIndex = partition(nums,l,r); quickSort(nums,l,partitionIndex-1); quickSort(nums,partitionIndex+1,r); } } private static int partition(int[] nums, int l, int r) { int pivot = l; int index = pivot+1; for (int i = index; i <= r; i++) { if(nums[pivot] > nums[i]){ swap(nums,i,index); index++; } } swap(nums,pivot,index-1); return index-1; } private