分析:快排主要思想是先在(1).數組中找一個作為基準,拿這個基準把比它大的放一邊,比它小的放在另一邊;然后再把它左右倆邊的重復(1)操作
實現:(我將第一個元素作為基準)
public static void QuickSort(int[] numbers,int a,int b){if(a>=b)return; int tag=numbers[a],i=a,j=b;while(i<j){while(i<j&&numbers[j]>=tag){j--;}if(i<j){numbers[i]=numbers[j];i++;}while(i<j&&numbers[i]<=tag){i++;}if(i<j){numbers[j]=numbers[i];j--;}}numbers[i]=tag;QuickSort(numbers,a,i-1);QuickSort(numbers,i+1,b);}
新聞熱點
疑難解答