亲测通过的程序: import java.util.*; public class QuickSort { public static void main(String[] args){ int[] a={49,32,57,90,23,17}; quicksort(a, 0, a.length-1); for (int i = 0; i < a.length; i++) { System.out.print(a[i]+" "); } } static void quicksort(int n[],int left,int right){ int dp; if(left<right){ dp=partition(n,left,right); quicksort(n, left, dp-1); quicksort(n, dp+1, right); } } static int partition(int n[], int left,int right){ int pivot=n[left]; while(left<right){ while(left<right n="" right="">=pivot){ right--; } if (left<right) { n[left++]=n[right]; } while(left<right & n[left]<=pivot){ left++; } if (left<right) { n[right--]=n[left]; } } n[left]=pivot; return left; } } </right>