//5快速排序--快排
public class quicksort ;
partition(a, 0, a.length-1);
print(a);
}@test
public void testquicksort();
quicksort(a, 0, a.length-1);
print(a);
}public void quicksort(int a,int p,int r)
//把i與j位置的數進行交換
swap(a,i,j);
} //把樞軸(目前p位置的元素)交換到j
swap(a,p,j);
return j;//樞軸的位置
}//優化後的快速排序
public int partition2(int a,int p,int r)
//把i與j位置的數進行交換
swap(a,i,j);
} //把樞軸(目前p位置的元素)交換到j
swap(a,p,j);
return j;//樞軸的位置
} /*
@test
public void quicksort();
//劃分結果: 左半區a[0...q-1], 樞軸a[q], 右半區a[q+1...a.length-1]
int q = partition(a, 0, a.length-1);
int qq=partition(a,0,q-1);
//....
int qqq=partition(a,q+1,a.length-1);
//.....
} */
public void swap(int a,int i,int j)
public void print(int a)
system.out.println();}}
資料結構排序演算法之快速排序
快速排序 includeusing namespace std void swap int arr,int i,int j void quicksort int arr,int left,int right arr i temp quicksort arr,left,i 1 quicksort ar...
資料結構 排序演算法 快速排序
演算法描述 快速排序是由東尼 霍爾所發展的一種排序演算法。在平均狀況下,排序 n 個專案要 n log n 次比較。在最壞狀況下則需要 n2 次比較,但這種狀況並不常見。事實上,快速排序通常明顯比其他 n log n 演算法更快,因為它的內部迴圈 inner loop 可以在大部分的架構上很有效率地...
資料結構排序之快速排序
本來昨天晚上就可以把快速排序發上去,沒想到昨晚csdn竟然維護,那麼就只能在停電的情況下下用學校的卡的要死的網發這快速排序了,不停多好,停電了還得自己掏腰包買個充電檯燈,裝的好像像學霸一樣,實際就是乙個大學渣,我也就不jjyy,直接說快速排序的思想,我是這樣理解的,用乙個變數作為基準,在拿出i和j兩...