本次作業兩名同學的學號:1501020532王力銷 1501020534喬鑫森
本次作業git的提交位址
快速排序是我們之前學習的氣泡排序的公升級,他們都屬於交換類排序,都是採用不斷的比較和移動來實現排序的。快速排序是一種非常高效的排序演算法,它的實現,增大了記錄的比較和移動的距離,將關鍵字較大的記錄從前面直接移動到後面,關鍵字較小的記錄從後面直接移動到前面,從而減少了總的比較次數和移動次數。同時採用「分而治之」的思想,把大的拆分為小的,小的拆分為更小的,其原理如下:對於給定的一組記錄,選擇乙個基準元素,通常選擇第乙個元素或者最後乙個元素,通過一趟掃瞄,將待排序列分成兩部分,一部分比基準元素小,一部分大於等於基準元素,此時基準元素在其排好序後的正確位置,然後再用同樣的方法遞迴地排序劃分的兩部分,直到序列中的所有記錄均有序為止。(摘自網上部落格)
用字串和字串的緩衝區來構建乙個帶有兩個緩衝區的字串,乙個緩衝區是低位緩衝區,另乙個是高位緩衝區。兩個緩衝區交替向中間掃瞄。
sort() 方法用於對陣列的元素進行排序。
最後遍歷陣列進行輸出。
public快速排序其實就是公升級版的氣泡排序,這次的題目我之前在網上就見過,我也想不出更好的方法來替換網上給的標準答案,只能拾人牙慧了。 答題快結束的時候對gi的使用t出了問題,自己變得很急躁,但是急躁不能解決問題。我會認真再看看關於git的使用方法的博文,下一次一定不會再出現這種情況了。class
a i =x;
j =y;
z =a[i]; // 用子表的第乙個記錄做基準
while (i
a[i] =z; // 將基準數值替換回 a[i]
sort(a, x, i - 1
); // 對高位緩衝區排序
sort(a, i + 1
, y); // 對低位緩衝區排序
}public
static
void quicksort(int
a)
public
static
void
main(string args) ;
quicksort(a);
for(int c=0;c) //遍歷然後按要求輸出}}
我也不想用什麼漢堡包的方式去評價我的合作夥伴,我倆是上下鋪,朝夕與共一起生活了兩年半的時間了,我們彼此之間太熟悉了,彼此的優缺點也都心知肚明。我還是那樣急躁易怒,他還是遇事不驚,這一點我真的得向他好好學習。這次我們組的過失主要在我,很對不起他。下次考核不知道會以什麼樣的形式來進行,但是無論如何,我是不會再出現這次的失誤了。也希望老喬能多多動手,有想法的時候能自己去將**實現出來。
第三次作業
2 12有600 mb 兆位元組 的資料,需要從南京傳送到北京。一種方法是將資料寫到磁碟上,然後託人乘火車這 些磁碟捎去。另一種方法是用計算機通過長途 線路 設資訊傳送的速率為2.4kb s 傳送此資料。試比較這兩種方法的優劣。若資訊傳送速率為33.6kb s,其結果又如何?解 當傳送速率為2.4k...
第三次作業
1 有600mb 兆位元組 的資料,需要從南京傳送到北京 一種方法是將資料寫到磁碟上,然後託人乘火車將這些磁碟捎去。另一種方法是用計算機通過長途 線路 設資訊傳送的速率為2.4kb s 傳送此資料,試比較這兩種方法的優劣。若資訊傳送的速率為33.6kb s,其結果又如何?解 假定連續傳送且不出錯。若...
第三次作業
p67 2 12 有600mb的資料,需要從南京傳送到北京。一種方法是將資料寫到磁碟上,然後託人乘火車將這些磁碟捎去。另一種方法是用計算機通過長途 線路 設資訊傳送的速率是2.4kbps 傳送此資料。試比較這兩種方法的優劣。若資訊傳送速率為33.6kbps,其結果又如何?解 1 t 600 1024...