版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、2016數(shù)據(jù)結(jié)構(gòu)Data structure講授:丁慧 堆排序常州信息職業(yè)技術(shù)學(xué)院0203堆排序(1)定義:n個(gè)關(guān)鍵字序列kl,k2,kn稱為堆,當(dāng)且僅當(dāng)該序列滿足如下 性質(zhì): kik2i且kik2i+1(1in/2) 或 kik2i且kik2i+1(1in/2)思考:若將此序列所存儲(chǔ)的向量R1.n看做是一棵完全二叉樹(shù)的存儲(chǔ)結(jié)構(gòu),則堆實(shí)質(zhì)上是滿足如下性質(zhì)的完全二叉樹(shù):樹(shù)中任一非葉結(jié)點(diǎn)的關(guān)鍵字均不大于(或不小于)其左右孩子結(jié)點(diǎn)的關(guān)鍵字。堆的任一子樹(shù)亦是堆。1、堆三、鏈表的插入04關(guān)鍵字序列(12,35,15,47,40,18,68,56)12153540186856475635124018476
2、815堆排序滿足堆的性質(zhì),因此該序列是堆關(guān)鍵字序列(56,12,35,15, 40,18, 47,68)不滿足堆的性質(zhì),因此不是堆05堆排序(2)大根堆和小根堆 根結(jié)點(diǎn)(亦稱為堆頂)的關(guān)鍵字是堆里所有結(jié)點(diǎn)關(guān)鍵字中最小者的堆稱為小根堆; 根結(jié)點(diǎn)(亦稱為堆頂)的關(guān)鍵字是堆里所有結(jié)點(diǎn)關(guān)鍵字中最大者的堆稱為大根堆。(3)堆的特點(diǎn) 大根堆(或小根堆)中,堆頂記錄的關(guān)鍵字最大(或最小),因此在堆中很容易選取最大(或最?。╆P(guān)鍵字的記錄。堆的樹(shù)形結(jié)構(gòu)記錄了大部分記錄關(guān)鍵字之間的大小關(guān)系,因此可減少記錄關(guān)鍵字的比較次數(shù)。06堆排序初始狀態(tài):將R1.n構(gòu)造為初始堆;無(wú)序區(qū)包含所有記錄R1.n,有序區(qū)為空2、用大根
3、堆排序方法 交換:將錐頂記錄R1 和無(wú)序區(qū)的最后一個(gè)記錄Rn交換,由此得到新的無(wú)序區(qū)R1n-1和有序區(qū)Rn,且滿足R1n-1.keysRn.key重建堆:由于交換后新的錐頂記錄R1可能違反堆性質(zhì),故應(yīng)將當(dāng)前無(wú)序區(qū)R1.n-1調(diào)整為堆。(1)第一趟排序:(2)第i趟排序:排序前狀態(tài):無(wú)序區(qū)為R1.n-(i-1),有序區(qū)為Rn-(i-1)+1.n,無(wú)序區(qū)在第i-1趟已調(diào)整為堆 交換:將堆頂記錄R1與無(wú)序區(qū)的最后一個(gè)記錄Rn-i+1交換,得到新的無(wú)序區(qū)R1n-i和有序區(qū)Rn-i+1.n重建堆:由于交換后新的錐頂記錄R1可能違反堆性質(zhì),故應(yīng)將當(dāng)前無(wú)序區(qū)R1.n-i調(diào)整為堆。(3)重復(fù)進(jìn)行第i趟的操作,直到無(wú)序區(qū)只有一個(gè)元素為止。07堆排序3、堆排序算法void HeapSort(SeqList R) /對(duì)R1.n進(jìn)行堆排序,用R0做暫存單元int i;BuildHeap(R); /對(duì)R1.n構(gòu)建初始堆for(i=1;in;i+) /對(duì)當(dāng)前無(wú)序區(qū)R1. n-(i-1)進(jìn)行堆排序,共做n-1趟R0=R1; /將堆頂與當(dāng)前無(wú)序區(qū)最后一個(gè)記錄交換R1=Rn-(i-1
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 癌癥超聲波影像分析的商業(yè)價(jià)值
- Unit 1【單元測(cè)試·基礎(chǔ)卷】-2023-2024學(xué)年九年級(jí)英語(yǔ)上冊(cè)(牛津上海版)解析版
- 科技賦能下的教育小微企業(yè)創(chuàng)新策略報(bào)告
- 二零二五年度城市出租車經(jīng)營(yíng)權(quán)置換合同模板4篇
- 二零二五年度車輛租賃售后服務(wù)保障合同12篇
- 甘肅2025年甘肅工業(yè)職業(yè)技術(shù)學(xué)院引進(jìn)博士研究生15人筆試歷年參考題庫(kù)附帶答案詳解
- 二零二五年度草料種植基地智能化管理系統(tǒng)合同3篇
- 溫州浙江溫州永嘉縣120急救指揮中心招聘勞務(wù)派遣人員筆試歷年參考題庫(kù)附帶答案詳解
- 河源廣東河源市消防救援支隊(duì)2025年第一批政府專職消防員招聘86人筆試歷年參考題庫(kù)附帶答案詳解
- 滄州河北省滄州中西醫(yī)結(jié)合醫(yī)院成熟型急需緊缺型及博士人才招聘9人筆試歷年參考題庫(kù)附帶答案詳解
- 中央2025年國(guó)務(wù)院發(fā)展研究中心有關(guān)直屬事業(yè)單位招聘19人筆試歷年參考題庫(kù)附帶答案詳解
- 2024年09月北京中信銀行北京分行社會(huì)招考(917)筆試歷年參考題庫(kù)附帶答案詳解
- 外呼合作協(xié)議
- 小學(xué)二年級(jí)100以內(nèi)進(jìn)退位加減法800道題
- 保險(xiǎn)公司2025年工作總結(jié)與2025年工作計(jì)劃
- 2024年公司領(lǐng)導(dǎo)在新年動(dòng)員會(huì)上的講話樣本(3篇)
- 眼科護(hù)理進(jìn)修專題匯報(bào)
- 介入手術(shù)室感染控制管理
- 2024北京初三(上)期末英語(yǔ)匯編:材料作文
- 2024年大型風(fēng)力發(fā)電項(xiàng)目EPC總承包合同
- 禮儀服務(wù)合同三篇
評(píng)論
0/150
提交評(píng)論