public class Quicksort
{
public static void main(String[] args)
{
int i,j = 0;
int []list=new int[10];
//int [] list={1,4,5,7,2,3};
System.out.println("排序前的数组是:");
for(i=0;i<list.length;i++)
{
list[i]=(int)(Math.random()*100);
System.out.print(list[i]+" ");
}
sort(list, 0, list.length-1);//调用sort方法,0表示数组的第一个元素,list.length-1表示数组的最后一个元素。
System.out.println( );
System.out.println("排序后的数组是:");
for(i=0;i<list.length;i++)
System.out.print(list[i]+" ");
}
private static void sort(int[] list,int l,int r)
{
int i,j;
int x,y;
i=l;j=r;
x=list[(r+l)/2];
//System.out.print(x+" ");
do{
while((list[i]<x)&&(i<r)) i++;
while((x<list[j])&&(j>l)) j--;
if(i<=j)
{
y=list[j];
list[j]=list[i];
list[i]=y;
i++;
j--;
}
}while(i<=j);
if(l<j) sort(list,l,j);
if(i<r) sort(list,i,r);
}
}