快速排序(演算法):
阿新 • • 發佈:2019-02-04
實現方法來自 MoreWindows
java實現
package function;
public class QSfunction
{
public static void main(String arrg[])
{
int a[],i;
a=new int[10];
for(i=0;i<10;i++)
{
a[i]=(int)(Math.random()*100);
}
for(i=0;i<10;i++)
System.out .print(" "+a[i]);
System.out.println("");
QS(a,0,9);
for(i=0;i<10;i++)
System.out.print(" "+a[i]);
}
public static void QS(int a[],int l,int r)
{
if(l<r)
{
int i=l,j=r,temp;
temp=a[i];
while(i<j)
{
while (a[j]>=temp&&i<j)
j--;
if(i<j)
a[i++]=a[j];
while(a[i]<temp&&i<j)
i++;
if(i<j)
a[j--]=a[i];
}
a[i]=temp;
QS(a,l,i-1 );
QS(a,i+1,r);
}
}
}