版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
6.8哈夫曼樹與
哈夫曼編碼
最優(yōu)樹的定義
如何構(gòu)造最優(yōu)樹
前綴編碼
赫夫曼編碼
一、最優(yōu)樹的定義樹的路徑長度定義為:
樹中每個結(jié)點(diǎn)的路徑長度之和。結(jié)點(diǎn)的路徑長度定義為:
從根結(jié)點(diǎn)到該結(jié)點(diǎn)的路徑上分支的數(shù)目。樹的帶權(quán)路徑長度定義為:
樹中所有葉子結(jié)點(diǎn)的帶權(quán)路徑長度之和WPL(T)=
wklk(對所有葉子結(jié)點(diǎn))。假設(shè)有n個權(quán)值{w1,w2,…wn},構(gòu)造一棵有n個葉子結(jié)點(diǎn)的二叉樹,每個葉子結(jié)點(diǎn)帶權(quán)為Wi,則其中帶權(quán)路徑長度取最小值的二叉樹稱為“最優(yōu)樹”。例如:27975492WPL(T)=72+52+23+43+92=60WPL(T)=74+94+53+42+21=8954
根據(jù)給定的n個權(quán)值{w1,w2,…,wn},構(gòu)造n棵二叉樹的集合
F={T1,T2,…,Tn},其中每棵二叉樹中均只含一個帶權(quán)值為wi的根結(jié)點(diǎn),其左、右子樹為空樹;二、如何構(gòu)造最優(yōu)樹(1)(赫夫曼算法)以二叉樹為例:在F中選取其根結(jié)點(diǎn)的權(quán)值為最小的兩棵二叉樹,分別作為左、右子樹構(gòu)造一棵新的二叉樹,并置這棵新的二叉樹根結(jié)點(diǎn)的權(quán)值為其左、右子樹根結(jié)點(diǎn)的權(quán)值之和;(2)從F中刪去這兩棵樹,同時加入剛生成的新樹;重復(fù)
(2)
和
(3)
兩步,直至F中只含一棵樹為止。(3)(4)9例如:已知權(quán)值W={5,6,2,9,7}5627527697671395276713952795271667132900001111000110110111從根結(jié)點(diǎn)到葉子結(jié)點(diǎn)的路徑上分支字符組成的字符串,可以作為每個葉子結(jié)點(diǎn)編碼。約定左分支表示字符‘0’,右分支表示字符‘1’。若要設(shè)計不等長的編碼,則必須任何一個字符的編碼都不是同一字符集中另一個字符的編碼的前綴,這種編碼稱為前綴編碼。三、前綴編碼以傳送的電文為例比較等長編碼和不等長編碼方法:一、等長編碼:電文中所需傳送的字符有A、B、C、D,編碼分別為00、01、10、11,若要發(fā)送‘ABACCDA’電文,則以字符串‘00010010101100’發(fā)送,根據(jù)字符對應(yīng)的編碼,在接收端能知道發(fā)送的電文為‘ABACCDA’。二、不等長編碼:當(dāng)A、B、C、D的編碼分別為0、00、1、10,要發(fā)送上述電文以電文‘ABACCDA’,相應(yīng)的字符串為‘000011100’,在接收端,對于子串’0000’的譯法就有多種,可以是’AAAA‘、’BB’、‘ABA’、‘BAA’等等。四、赫夫曼編碼如何得到使電文總長最短的二進(jìn)制前綴編碼呢?假設(shè)每種字符在電文中出現(xiàn)的次數(shù)為wi,其編碼長度為li,電文中只有n種字符,則電文總長為
wili。
對應(yīng)到二叉樹上,置wi為葉子結(jié)點(diǎn)的權(quán),li為根到葉子的路徑長度,則
wili恰為二叉樹上帶權(quán)路徑長度。設(shè)計電文總長最短的二進(jìn)制前綴編碼即為以n種字符出現(xiàn)的頻率作權(quán),設(shè)計一棵赫夫曼樹的問題,由此得到的二進(jìn)制前綴編碼稱為赫夫曼編碼。
利用赫夫曼樹可以構(gòu)造一種不等長的二進(jìn)制編碼,并且構(gòu)造所得的赫夫曼編碼是一種最優(yōu)前綴編碼,即使所傳電文的總長度最短。例6-2:
1.熟練掌握二叉樹的結(jié)構(gòu)特性,了解相應(yīng)的證明方法。2.熟悉二叉樹的各種存儲結(jié)構(gòu)的特點(diǎn)及適用范圍。3.遍歷二叉樹是二叉樹各種操作的基礎(chǔ)。實現(xiàn)二叉樹遍歷的具體算法與所采用的存儲結(jié)構(gòu)有關(guān)。掌握各種遍歷策略的遞歸算法,靈活運(yùn)用遍歷算法實現(xiàn)二叉樹的其它操作。層次遍歷是按另一種搜索策略進(jìn)行的遍歷。4.理解二叉樹線索化的實質(zhì)是建立結(jié)點(diǎn)與其在相應(yīng)序列中的前驅(qū)或后繼之間的直接聯(lián)系,熟練掌握二叉樹的線索化過程以及在中序線索化樹上找給定結(jié)點(diǎn)的前驅(qū)和后繼的方法。二叉樹的線索化過程是基于對二叉樹進(jìn)行遍歷,而線索二叉樹上的線索又為相應(yīng)的遍歷提供了方便。5.熟悉樹的各種存儲結(jié)構(gòu)及其特點(diǎn),掌握樹和森林與二叉樹的轉(zhuǎn)換方法。建立存儲結(jié)構(gòu)是進(jìn)行其它操作的前提,因此讀者應(yīng)掌握1至2種建立二叉樹和樹的存儲結(jié)構(gòu)的方法。6.學(xué)會編寫實現(xiàn)樹的各種操作的算法。7.了解最優(yōu)樹的特性,掌握建立最優(yōu)樹和哈夫曼編碼的方法。復(fù)習(xí)題一棵完全二叉樹上有1001個結(jié)點(diǎn),其中葉子結(jié)點(diǎn)的個數(shù)是()。250500254505以上答案都不是答案:E以下說法錯誤的是()存在這樣的二叉樹,對它采用任何次序遍歷其結(jié)點(diǎn)訪問序列均相同。二叉樹是樹的特殊情形。由樹轉(zhuǎn)換成二叉樹,其根結(jié)點(diǎn)的右子樹總是空的。在二叉樹只有一棵子樹的情況下,也要明確指出該子樹是左子樹還是右子樹。答案:B樹的基本遍歷策略可分為先根遍歷和后根遍歷,二叉樹的基本遍歷策略分為先序、中序和后序三種遍歷。我們把由樹轉(zhuǎn)化得到的二叉樹稱該樹對應(yīng)的二叉樹,則下面()是正確的。樹的先根遍歷序列與其對應(yīng)的二叉樹先序遍歷序列相同。樹的后根遍歷序列與其對應(yīng)的二叉樹后序遍歷序列相同。樹的先根遍歷序列與其對應(yīng)的二叉樹中序遍歷序列相同。以上均不對。答案:A下面幾個符號串編碼集合中,不是前綴編碼的是()。{0,10,110,1111}{11,10,001,101,0001}{00,010,0110,1000}{b,c,aa,ac,aba,abb,abc}答案:B對于前序遍歷與中序遍歷結(jié)果相同的二叉樹為(),對于前序遍歷和后序遍歷結(jié)果相同的二叉樹為()。一般二叉樹只有根結(jié)點(diǎn)的二叉樹根結(jié)點(diǎn)無左孩子的二叉樹根結(jié)點(diǎn)無右孩子的二叉
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度民宿客棧運(yùn)營管理合同標(biāo)準(zhǔn)文本3篇
- 二零二五年度PVC改性材料研發(fā)與應(yīng)用合同2篇
- 2025年獼猴桃樹種子培育基地建設(shè)與運(yùn)營管理合同4篇
- 2025年特色餐廳廚房承包運(yùn)營合同2篇
- 二零二五年度農(nóng)機(jī)車輛租賃及配套設(shè)備供應(yīng)合同4篇
- 2025年度農(nóng)機(jī)合作社農(nóng)機(jī)保險代理服務(wù)合同4篇
- 二零二五年度門臉房屋租賃與教育培訓(xùn)機(jī)構(gòu)合作合同3篇
- 2025年度智能門禁系統(tǒng)與智能家居系統(tǒng)融合合同4篇
- 二零二五年度家教服務(wù)跨地域合作三方合同2篇
- 煙霧探測器的功能與使用
- 物流無人機(jī)垂直起降場選址與建設(shè)規(guī)范
- 肺炎臨床路徑
- 外科手術(shù)鋪巾順序
- 創(chuàng)新者的窘境讀書課件
- 綜合素質(zhì)提升培訓(xùn)全面提升個人綜合素質(zhì)
- 如何克服高中生的社交恐懼癥
- 聚焦任務(wù)的學(xué)習(xí)設(shè)計作業(yè)改革新視角
- 移動商務(wù)內(nèi)容運(yùn)營(吳洪貴)任務(wù)三 APP的品牌建立與價值提供
- 電子競技范文10篇
- 食堂服務(wù)質(zhì)量控制方案與保障措施
- VI設(shè)計輔助圖形設(shè)計(2022版)
評論
0/150
提交評論