JAVA 数据结构之快速排序
JAVA 数据结构之快速排序:
/**
* @(#)QuickSortTest.java
*
*
* @author
* @version 1.00 2008/7/25
*/
public class QuickSortTest {
public static void sort(int[] number){
sort(number,0,number.length-1);
}
private static void sort(int[] number,int left,int right){
if(left<right){
int s=number[(left+right)/2];
int i=left;
int j=right;
while(true){
//向右查找
while(number[i]<s) i++;
//向左查找
while(number[j]>s) j--;
if(i>=j) break;
swap(number,i,j);
}
sort(number,left,i-1);//对左边进行递归
sort(number,j+1,right);//对右边进行递归
}
}
private static void swap(int[] number,int i,int j){
int t;
t=number[i];
number[i]=number[j];
number[j]=t;
}
public static void main(String[] args){
int[] number={10,9,3,1,6,5,4,8,2,7};
sort(number);
for(int i=0;i<number.length;i++)
System.out.print(number[i]+",");
}
}