


全文預(yù)覽已結(jié)束
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
數(shù)據(jù)結(jié)構(gòu)一:排序方法比較1、冒泡排序?qū)儆诜€(wěn)定排序,是一種借助“交換”進(jìn)行排序的方法。首先要將第一個(gè)記錄的關(guān)鍵字和第二個(gè)記錄的關(guān)鍵字進(jìn)行比較,若為逆序,則將兩個(gè)記錄交換之,然后比較第二個(gè)記錄與第三個(gè)記錄的關(guān)鍵字,以此類推,直至第n-1個(gè)記錄與第n個(gè)記錄的關(guān)鍵字進(jìn)行比較為止,這一過程稱為第一趟冒泡排序,其結(jié)果使得關(guān)鍵字最大的記錄被安置在最后一個(gè)記錄的位置上;然后進(jìn)行第二趟冒泡排序,對(duì)前N-1個(gè)記錄進(jìn)行同樣操作;以此類推,直到在一趟排序過程中沒有進(jìn)行過交換記錄的操作為止。2、直接插入排序?qū)儆诜€(wěn)定的排序,每次從無序表中取出第一個(gè)元素,把它插入到有序表的合適位置,使有序表仍然有序。第一趟將待比較的數(shù)值與它的前一個(gè)數(shù)值進(jìn)行比較,當(dāng)前一數(shù)值比待比較數(shù)值大的情況下繼續(xù)循環(huán)比較,依次進(jìn)行下去,進(jìn)行了(n-1)趟掃描以后就完成了整個(gè)排序過程,結(jié)束該次循環(huán)。3、快速排序?qū)儆诓环€(wěn)定排序,是對(duì)起泡排序的一種改進(jìn)。它的基本思想是,通過一趟排序?qū)⒋庞涗浄指畛瑟?dú)立的兩部分,其中一部分記錄的關(guān)鍵字均比另一部分記錄的關(guān)鍵字小,則可分別對(duì)這兩部分記錄繼續(xù)進(jìn)行排序,以達(dá)到整個(gè)序列有序。假設(shè)待排序的序列為R.s,R.s+1,.,R.t,首先任意選取一個(gè)記錄,然后按下述原則從新排序記錄:將關(guān)鍵字較他小的記錄都安置在他的位置之前,將所有關(guān)鍵字較他大的記錄都安置在他的位置后面。由此可以該“樞軸”記錄最后所落的位置i作為分界線,將序列Rs,Rs+1.Rt分割成兩個(gè)子序列Rs,Rs+1.Ri-1和Ri+1Rt,這個(gè)過程稱作一趟快速排序。一趟快速排序的具體做法是:附設(shè)兩個(gè)指針low和high,它們的初值分別指向數(shù)組第一個(gè)數(shù)據(jù)和最后一個(gè)數(shù)據(jù),將樞軸記錄暫存在R0的位置上排序過程中只作Rlow或Rhigh的單向移動(dòng),直至一趟排序結(jié)束后再將樞軸記錄移至正確位置上。4、簡(jiǎn)單選擇排序?qū)儆诓环€(wěn)定排序,基本思想是,每一趟在n-i+1(i=1,2,n-1)個(gè)記錄中選取關(guān)鍵字最小的記錄作為有序序列中第i個(gè)記錄。第i趟簡(jiǎn)單選擇排序是指通過n-i次關(guān)鍵字的比較,從n-i+1個(gè)記錄中選出關(guān)鍵字最小的記錄,并和第i個(gè)記錄進(jìn)行交換。共需進(jìn)行n-1趟比較,直到所有記錄排序完成為止。例如:進(jìn)行第i趟選擇時(shí),從當(dāng)前候選記錄中選出關(guān)鍵字最小的k號(hào)記錄,并和第i個(gè)記錄進(jìn)行交換。5、希爾排序?qū)儆诓环€(wěn)定排序,也是一種屬插入排序類,它的基本思想是:先將整個(gè)待排記錄序列分割稱為若干個(gè)子序列分別進(jìn)行直接插入排序,待整個(gè)序列中記錄“基本有序”時(shí),再對(duì)全體記錄進(jìn)行一次直接插入排序。希爾排序的一個(gè)特點(diǎn)是:子序列的構(gòu)成不是簡(jiǎn)單的“逐段分割”,而是將相隔某個(gè)“增量”的記錄組成一個(gè)子序列。6、二叉樹排序?qū)儆诓环€(wěn)定排序,它的基本思想是,先將初始文件R1.n建成一個(gè)大根堆,此堆為初始的無序區(qū),再將關(guān)鍵字最大的記錄R1(即堆頂)和無序區(qū)的最后一個(gè)記錄Rn交換,由此得到新的無序區(qū)R1.n-1和有序區(qū)Rn,且滿足R1.n-1.keysRn.key;由于交換后新的根R1可能違反堆性質(zhì),故應(yīng)將當(dāng)前無序區(qū)R1.n-1調(diào)整為堆,然后再次將R1.n-1中關(guān)鍵字最大的記錄R1和該區(qū)間的最后一個(gè)記錄Rn-1交換,由此得到新的無序區(qū)R1.n-2和有序區(qū)Rn-1.n,且仍滿足關(guān)系R1.n- 2.keysRn-1.n.keys,同樣要將R1.n-2調(diào)整為堆。直到無序區(qū)只有一個(gè)元素為止。輸入待排序列Rn+1選擇排序類型sortSort直接插入冒泡排序快速排序簡(jiǎn)單選擇希爾排序輸出結(jié)果結(jié)束二叉樹排序開始二:程序流程圖:三:實(shí)驗(yàn)總結(jié):本實(shí)驗(yàn)綜合了多種內(nèi)排序方法,深入了解了其算法,并將6種內(nèi)排序方法綜合起來做了比較,對(duì)于這6種算法也更加了解,知道各自有何不同,各自適合哪種情況,雖然本次實(shí)驗(yàn)比較和程序段有很多都
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 商鋪打通出租協(xié)議書
- 商場(chǎng)合同變更協(xié)議書
- 商務(wù)沙發(fā)轉(zhuǎn)讓協(xié)議書
- 商場(chǎng)暑期安全協(xié)議書
- 商場(chǎng)退租保密協(xié)議書
- 分成利潤(rùn)合同協(xié)議書
- 廚師崗位安全協(xié)議書
- 古鎮(zhèn)店鋪招商協(xié)議書
- 土雞買賣定金協(xié)議書
- 合同違規(guī)賠付協(xié)議書
- 動(dòng)脈取栓知識(shí)講座
- 2023年市場(chǎng)部經(jīng)理崗位職責(zé)
- 酒店畢業(yè)季促銷策劃方案
- 孕產(chǎn)期心理危機(jī)干預(yù)和自救技巧
- 輸尿管腫瘤護(hù)理課件
- 精氣神完整分
- 電氣控制及PLC應(yīng)用技術(shù)(基于西門子S7-1200)活頁式 課件 項(xiàng)目九 西門子S7-1200高級(jí)應(yīng)用
- 初中函數(shù)-圖像練習(xí)坐標(biāo)紙(A4)直接打印版本
- 各級(jí)無塵室塵埃粒子測(cè)量表
- 成人本科學(xué)士學(xué)位英語詞匯
- 第7課《溜索》一等獎(jiǎng)創(chuàng)新教學(xué)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論