版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第九章:分類。學習本章要求掌握排序的基本概念和相關(guān)術(shù)語。碩士:插入排序的基本思想,直接插入排序算法、二進制插入排序算法和希爾排序算法的實現(xiàn)過程和算法。并了解插入排序算法的時間效率和空間效率。碩士:交換排序的基本思想,冒泡排序算法,快速排序的實現(xiàn)過程和算法。了解氣泡排序和快速排序的算法評估。碩士:選擇性排序的基本思想,簡單的選擇性排序,實現(xiàn)算法和算法評估的堆排序。碩士:合并排序的基本思想和雙向合并的實現(xiàn)算法。默認排序數(shù)據(jù)結(jié)構(gòu):待排序的記錄按順序存儲,待排序記錄的定義為:#define MAXSIZE 100 /*假設(shè)順序表的最大長度為100 */typedef int KeyType;/*假設(shè)關(guān)
2、鍵字類型是整數(shù)類型*/typedef結(jié)構(gòu)關(guān)鍵字類型關(guān)鍵字;/*關(guān)鍵字項*/其他類型其他;/*其他項目*/數(shù)據(jù)類型;/*數(shù)據(jù)元素類型*/typedef結(jié)構(gòu)數(shù)據(jù)類型r maxsize1/* r0空閑或充當哨兵*/int length;/*序列表長度*/sqlist;/*序列表類型*/,9.1基本概念,排序定義將數(shù)據(jù)元素(或記錄)的任意序列重新排列成按鍵排序的序列,這稱為排序分類。根據(jù)待排序記錄的內(nèi)部位置進行排序:待排序記錄存儲在內(nèi)存外部進行排序:排序過程中需要訪問外部內(nèi)存的排序的穩(wěn)定性。如果關(guān)鍵元素之間的位置關(guān)系相同,則排序前后是一致的。稱這種排序方法為穩(wěn)定的,否則就是不穩(wěn)定的。排序的基本操作是比
3、較兩個關(guān)鍵字的大小,并將記錄從一個位置移動到另一個位置。排序方法:內(nèi)部排序(本章討論的方法):在排序過程中,所有要排序的記錄都存儲在內(nèi)存中。插入排序:直接插入排序,分割插入排序,表格插入排序,希爾排序交換排序:氣泡排序,快速排序選擇排序:簡單選擇排序,樹選擇排序,堆排序合并排序:雙向合并排序基數(shù)排序:多鍵排序,鏈基數(shù)排序外排序:排序過程多路平衡合并是基于排序所需的工作量。簡單排序法:T(n)=O(n)高級排序法:T(n)=O(logn)基數(shù)排序法:T(n)=O(d.n)。評估排序算法的質(zhì)量有兩個主要標準。首先是執(zhí)行算法所需的時間;第二是執(zhí)行算法所需的額外空間;此外,算法本身的復雜性也是一個需要
4、考慮的因素。因為排序是一個經(jīng)常使用的操作,所以排序的時間成本是算法最重要的標志。排序的時間成本可以通過算法執(zhí)行中的比較和移動次數(shù)來衡量。同時,有時也要考慮排序的穩(wěn)定性。9.2插入排序,9.2.1直接插入排序,假設(shè)要排序的n個記錄r0,R1,rn-1存儲在一個數(shù)組中,當插入記錄Ri(i=1,2n-1)時,記錄集被分成兩個區(qū)間R0,Ri-1和Ri,Rn-1,其中前一個子區(qū)間已經(jīng)被排序。直接插入排序采用順序存儲結(jié)構(gòu)。基本思想是每次將一條要排序的記錄插入到排序后的子序列的適當位置,根據(jù)其關(guān)鍵字大小,直到所有記錄都被插入。例如,49 38 65 97 76 13 27,I=2 38 (38 49) 65
5、 97 76 13 27,I=3 65 (38 49 65) 97 76 13 27,I=4 97 (38 49 65 97) 76 13 27,I=5 76(38 47 I=6 13(13 38 49 65 76 97)27,I=1(),I=7(11設(shè)立監(jiān)視哨;尋找插入位置;移動元素;插入;您可以在尋找插入位置時移動元素。該算法在以下最佳情況下評估時間復雜度:如果要排序的記錄按關(guān)鍵字從小到大(正序)排列,則關(guān)鍵字比較的數(shù)量為:最壞的情況:如果要排序的記錄按關(guān)鍵字從小到大(反序)排列,則關(guān)鍵字比較的數(shù)量為:如果要排序的記錄是隨機的,則關(guān)鍵字比較的平均數(shù)量為:記錄移動的數(shù)量為:t (n)=o()
6、??臻g復雜度:S(n)=O(1),直接插入排序是一種穩(wěn)定的排序算法,9.2.2二進制插入排序的排序過程:使用二分搜索法方法確定插入位置的排序稱為,例如,I=1 (30) 13 70 85 39 42 620,I=2 13(13 30)70 85 39 I=7 6(6 13 30 39 42 70 85)20,i=8 20 (6 13 20 30 39 42 70 85),對于(I=2;I=n;設(shè)立監(jiān)視哨;尋找插入位置;移動元素;插入;void binarysertsport(sqlist * s)/*將序列表s半插入并排序*/int low、high、mid對于(I=2;ilength1)S-
7、r0=S-ri;/*保存要插入的元素*/low=1;高=I-1;/*設(shè)置初始間隔*/while(low r0 . keys-rmid . key)low=mid 1;/*插入位置在上半部分區(qū)域*/否則高=中1;/*插入位置在下半部分區(qū)域*/*而*/為(j=I-1;j=高1;J-)/* high 1是插入位置*/s-rj 1=s-rj;/*向后移動元素以留出插入空間*/s-rhigh 1=s-r0;/*將元素插入*/*進行*/* binarysertsport */,效率分析:教科書是錯誤的!否則,排序不穩(wěn)定!算法描述,2。二進制插入排序,二進制插入排序的比較次數(shù)與待排序記錄的初始狀態(tài)無關(guān),而只
8、取決于記錄的數(shù)量。插入第I條記錄時,其比較次數(shù)最多為N條記錄。排序的總比較次數(shù)為:移動記錄的次數(shù)與直接插入排序的次數(shù)相同,因此時間復雜度仍為O(n2)。二分法插入排序是一種穩(wěn)定的排序方法/注意確保if (s-r0)。鑰匙-rmid。鍵)低=中1;該算法的輔助空間為0(1)。注:推導過程可參考北京大學教材9.2.4希爾排序法(收縮增量法),殼排序也稱為收縮增量排序。首先,要排列的整個記錄序列被分成幾個子序列,用于直接插入和排序,當整個序列中的記錄“基本有序”時,整個序列可以通過直接插入一次來排序。殼排序的一個特點是子序列的組成不是簡單的“逐段”,而是由以一定增量分隔的記錄組成的子序列。算法描述,希爾排序算法描述:空殼插入(數(shù)據(jù)類型r,i
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 醫(yī)院錄入員考試題及答案
- 導醫(yī)崗前培訓試題及答案
- 初中化學試題解釋及答案
- 九江市贛北勞動保障事務(wù)代理所招聘勞務(wù)派遣制員工參考題庫必考題
- 北京保障房中心有限公司面向社會招聘法律管理崗1人備考題庫必考題
- 北川縣2025年機關(guān)事業(yè)單位縣內(nèi)公開考調(diào)工作人員(8人)考試備考題庫必考題
- 合江縣2025年下半年公開考調(diào)事業(yè)單位工作人員的備考題庫必考題
- 招38人!興??h公安局2025年招聘警務(wù)輔助人員參考題庫必考題
- 江西省水務(wù)集團有限公司2025年第三批社會招聘【34人】備考題庫附答案
- 眉山市發(fā)展和改革委員會關(guān)于市項目工作推進中心公開選調(diào)事業(yè)人員的備考題庫附答案
- 2026年大連雙D高科產(chǎn)業(yè)發(fā)展有限公司公開選聘備考題庫及答案詳解(奪冠系列)
- 2026河南鄭州信息工程職業(yè)學院招聘67人參考題庫含答案
- 團隊建設(shè)與協(xié)作能力提升工作坊指南
- 客房清掃流程培訓課件
- 2026年中國煙草招聘筆試綜合知識題庫含答案
- 醫(yī)療機構(gòu)藥品配送服務(wù)評價體系
- 醫(yī)療資源合理分配
- 婦科微創(chuàng)術(shù)后護理新進展
- 幼兒園大蝦課件
- 2025新疆能源(集團)有限責任公司共享中心招聘備考題庫(2人)帶答案詳解(完整版)
- 2025至2030中國超純水(UPW)系統(tǒng)行業(yè)項目調(diào)研及市場前景預測評估報告
評論
0/150
提交評論