public static void main(String[] args) {
int [] a= {1,3,5,7,9,2,4,6};
Sorts(a,a.length-1);
for(int i=0;i System.out.print(a[i]+" "); } } public static void Sorts(int [] a,int start,int end) { int i,j,temp; if(start>end) { //起点终点相遇 return; } i=start; //起点(哨兵) j=end; //终点 temp=a[start]; while(i while(temp<=a[j]&&i } while(temp>=a[i]&&i } if(i int k=a[i]; a[i]=a[j]; a[j]=k; } a[start]=a[i]; //交换哨兵和中间值得位置 a[i]=temp; } Sorts(a,start,j-1); //递归重复执行 Sorts(a,j+1,end); //递归重复执行 }