版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、算法設(shè)計與分析2007.91第五章 堆排序堆的基本概念和性質(zhì)堆的基本操作(過程及分析)堆排序算法(過程及分析)堆排序應(yīng)用優(yōu)先級隊列(過程及分析)程序展示和講解2一、堆的基本概念和性質(zhì)1、定義: 堆可看作為一完全二叉樹,大根堆的任一 非終端節(jié)點(葉子節(jié)點) 的數(shù)據(jù)不小于其子節(jié)點的數(shù)據(jù)。2、兩個特點: 根節(jié)點上為該堆的最大元素。 較大的數(shù)據(jù)位于較低的層次。3堆的屬性1、 lengthA:數(shù)組中的元素個數(shù)2、heapsizeA:存放在A中的堆的元素個數(shù) 顯然heapsizeA lengthA3、給定一個節(jié)點的下標i,其父節(jié)點為 i/2 ,其左兒子LEFT(i)為2i、右兒子 RIGHT(i)為2i+
2、1.4五個基本過程1、HEAPIFY過程:維持堆性質(zhì),運行時間O(lgn).2、BUILD-HEAP過程:從無序的輸入數(shù)組中構(gòu)造出一個堆來,運行時間O(n). 3、HEAPSORT過程:對一個數(shù)組進行排序,運行時間O(nlgn). 4、EXTRACT-MAX和INSERT過程:是堆結(jié)構(gòu)可以作為一個優(yōu)先級隊列來用,運行時間O(lgn). 5堆實例6二、堆的基本操作HEAPIFY過程1、過程說明:對于第i個數(shù),假定以它左兒子LEFT(i)和右兒子 RIGHT(i)為根的兩棵子樹都已為堆,調(diào)用HEAPIFY使得以i為根的子樹成為一個的堆。2、過程圖例783、算法如下1、lLEFT(i)2、rRIGH
3、T(i)3、if lheapsize(A)andAlAi4、 then largestl5、 else largesti6、if rheapsize(A) andArAlargest7、 then largestr8、if largesti9、 then exchange AiAlargest10、 HEAPIFY(A,largest)94、運行時間 T(n)=T(2/3n)+(1) 可得T(n)=O(lgn) 因為堆的高度最大為lgn 所以可知T(n)= O(lgn)10BUILD-HEAP過程1、圖例2、 BUILD-HEAP(A)算法 1) heapsizeAlengthA 2) for
4、 i lengthA/2 downto 1 3) do HEAPIFY(A,i)3、運行時間 111213粗估: 每調(diào)一次HEAPIFY(A,i)的時間為O(lgn),總共有O(n)次調(diào)用,故運行時間最多為O(nlgn).此時間是不緊確的。緊確估計:含n個元素的堆中至多有 個節(jié)點的高度為h1415三、堆排序算法1、圖例:2、算法1) BUILDHEAP(A)2) for ilengthA downto 23) do exchange A1Ai4) heapsize(A)heapsize(A)-15) HEAPIFY(A,1)3、運行時間16171819堆排序的時間建堆的時間為O(n)+(n-1
5、)次的HEAPIFY調(diào)用時間 O(lgn),所以總的代價為O(nlgn)20四、優(yōu)先級隊列一、常見操作1、INSERT(S,x):把元素x插入集合S. 可記為SSx.2、MAXIMUM(S):返回S中具有最大關(guān)鍵字的元素。3、EXTRACTMAX(S):去掉并返回S中具有最大關(guān)鍵字的元素。21HEAP-EXTRACT-MAX過程HEAPEXTRACTMAX(A)if heapsize A1 and APARENT(i)key 4、 do AiAPARENT(i) 5、 iPARENT(i) 6、 Aikey3、運行時間: O(lgn)2425第五章 堆排序概念:二叉樹、完全二叉樹、根、葉節(jié)點、
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 五官科住院部制度
- 東莞消防安全制度
- 品德交通安全伴我行課件
- 2026年昭平縣公安局公開招聘警務(wù)輔助人員備考題庫及一套答案詳解
- 東莞市公安局橫瀝分局2025年第5批警務(wù)輔助人員招聘備考題庫及答案詳解參考
- 東莞市公安局水上分局麻涌水上派出所2025年第1批警務(wù)輔助人員招聘備考題庫及1套參考答案詳解
- 中共啟東市委組織部2026年校園招聘備考題庫及答案詳解1套
- 2025至2030中國抗結(jié)核藥物市場供需狀況及未來趨勢預(yù)測報告
- 2026中國汽車熱交換器行業(yè)運營態(tài)勢與應(yīng)用前景預(yù)測報告
- 2025至2030教育云計算服務(wù)模式創(chuàng)新與行業(yè)應(yīng)用深度研究報告
- 廢舊材料回收合同范本
- 2026年酒店服務(wù)員考試題及答案
- 普速鐵路行車技術(shù)管理課件 項目二 行車組織基礎(chǔ)
- 《(2025年)中國類風濕關(guān)節(jié)炎診療指南》解讀課件
- 炎德·英才·名校聯(lián)考聯(lián)合體2026屆高三年級1月聯(lián)考語文試卷(含答及解析)
- 麥當勞行業(yè)背景分析報告
- 中國心理行業(yè)分析報告
- 2025至2030中國生物芯片(微陣列和和微流控)行業(yè)運營態(tài)勢與投資前景調(diào)查研究報告
- 結(jié)核性支氣管狹窄的診治及護理
- 2025年鐵嶺衛(wèi)生職業(yè)學院單招職業(yè)適應(yīng)性考試模擬測試卷附答案
- 急腹癥的識別與護理
評論
0/150
提交評論