java 快速排序
www.diybl.com 时间 : 2008-09-07 作者:佚名 编辑:本站 点击: [ 评论 ]
数字从小到大排列,字符串数组从按字典顺序排列。
public class qsort {
/*字符串数组排序,str【0】=“abc”,str【1】=“abd”;str【2】=“abd”;QuickSort(str,0,2);*/
public static void QuickSort(String str[],int s,int t){
int i=s,j=t;
String temp;
if(s<t){
temp=str[s];
while(i!=j){
while(j>i&&str[j].compareTo(temp)>=0){
j--;
}
str[i]=str[j];
while(j>i&&str[i].compareTo(temp)<=0){
i++;
}
str[j]=str[i];
}
str[i]=temp;
QuickSort(str,s,i-1);
QuickSort(str,i+1,t);
}
}
/*数字排序str【0】=3,str【1】=1;str【2】=2;QuickSort(str,0,2);*/
public static void QuickSort(int str[],int s,int t){
int i=s,j=t;
int temp;
if(s<t){
temp=str[s];
while(i!=j){
while(j>i&&str[j]>=temp){
j--;
}
str[i]=str[j];
while(j>i&&str[i]<=temp){
i++;
}
str[j]=str[i];
}
str[i]=temp;
QuickSort(str,s,i-1);
QuickSort(str,i+1,t);
}
}
}