carlzhao531 发表于 2013-2-3 10:17:48

Java快速排序

public class SortTest {public static int[] a = {3,6,87,22,93,112,2,54,39,44};public static void qsort(int[] a,int i,int j) {if(i<j) {int p = partition(a,i,j);qsort(a,i,p);qsort(a,p+1,j);}}private static int partition(int[] a,int i,int j){int f = i;int r = j;int x = a;while(true) {while(a < x)f++;while(a > x)r--;if(a > a) {int temp = a;a = a;a = temp;}if(f >= r)break;}return r;}public static void traverse() {StringBuilder sb = new StringBuilder();for(int i=0; i<a.length-1; i++) {sb.append(a+",");}sb.append(a);System.out.println(sb.toString());}public static void main(String args[]) {qsort(a,0,a.length-1);traverse();}}
页: [1]
查看完整版本: Java快速排序