




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第6章樹和二叉樹數(shù)據(jù)結構講義-哈夫曼樹信息工程學院魏洪濤Email:greattide@163.com1.路徑和路徑長度在一棵樹中,從一個結點往下可以達到的孩子或子孫結點之間的通路,稱為路徑。通路中分支的數(shù)目稱為路徑長度。若規(guī)定根結點的層數(shù)為1,則從根結點到第L層結點的路徑長度為L-1。2.結點的權及帶權路徑長度若將樹中結點賦給一個有著某種含義的數(shù)值,則這個數(shù)值稱為該結點的權。結點的帶權路徑長度為:從根結點到該結點之間的路徑長度與該結點的權的乘積。6.6哈夫曼樹
一、基本術語3.樹的帶權路徑長度樹的帶權路徑長度規(guī)定為所有葉子結點的帶權路徑長度之和,記為wpl=,其中n為葉子結點數(shù)目,wi為第i個葉子結點的權值,li為第i個葉子結點的路徑長度。1.哈夫曼樹的定義在一棵二叉樹中,若帶權路徑長度達到最小,稱這樣的二叉樹為最優(yōu)二叉樹,也稱為哈夫曼樹(Huffmantree)。二、構造哈夫曼樹例有4個結點,權值分別為7,5,2,4,構造有4個葉子結點的二叉樹abcd7524WPL=7*2+5*2+2*2+4*2=36dcab2475WPL=7*3+5*3+2*1+4*2=46abcd7524WPL=7*1+5*2+2*3+4*3=352.哈夫曼樹的構造假設有n個權值,則構造出的哈夫曼樹有n個葉子結點。n個權值分別設為w1,w2,…,wn,則哈夫曼樹的構造規(guī)則為:(1)將w1,w2,…,wn看成是有n棵樹的森林(每棵樹僅有一個結點);(2)在森林中選出兩個根結點的權值最小的樹合并,作為一棵新樹的左、右子樹,且新樹的根結點權值為其左、右子樹根結點權值之和;(3)從森林中刪除選取的兩棵樹,并將新樹加入森林;(4)重復(2)、(3)步,直到森林中只剩一棵樹為止,該樹即為我們所求得的哈夫曼樹。
下面給出哈夫曼樹的構造過程,假設給定的葉子結點的權分別為1,5,7,3,則構造哈夫曼樹過程如圖7-24所示。構造哈夫曼樹的模擬演示
在遠程通訊中,要將待傳字符轉換成由二進制組成的字符串:設要傳送的字符為:ABACCDA若編碼為:A—00B—01 C—10D---11
若將編碼設計為長度不等的二進制編碼,即讓待傳字符串中出現(xiàn)次數(shù)較多的字符采用盡可能短的編碼,則轉換的二進制字符串便可能減少。00010010101100三、哈夫曼樹的應用(哈夫曼編碼)設要傳送的字符為:ABACCDA若編碼為:A—0B—00 C—1D---01
關鍵:要設計長度不等的編碼,則必須使任一字符的編碼都不是另一個字符的編碼的前綴。這種編碼稱作前綴編碼。
ABACCDA
000011010但:0000AAAAABABB重碼設要傳送的字符為:ABACCDA若編碼為:A—0B—110 C—10D---111
0110010101110ACBD000111采用二叉樹設計二進制前綴編碼規(guī)定:左分支用“0”表示;右分支用“1”表示譯碼過程:分解接收字符串:遇“0”向左,遇“1”向右;一旦到達葉子結點,則譯出一個字符,反復由根出發(fā),直到譯碼完成。0110010101110ACBD000111ABACCDA求Huffman編碼:由葉子→根,若:(1)從左分支下去,則分支為“0”;(2)從右分支下去,則分支為“1”。
ACBD000111例:已知某系統(tǒng)在通訊時,只出現(xiàn)C,A,S,T,B五種字符,它們出現(xiàn)的頻率依次為2,4,2,3,3,試設計Huffman編碼。
由Huffman樹得Huffman編碼為:TBACS000110110111148464220001113301TBACS出現(xiàn)頻率越大的字符,其Huffman編碼越短。6.7回溯法與樹的遍歷一、回溯法的基本思想回溯法:是對解空間樹進行搜索的算法,從根結點開始,對樹進行先序遍歷,若遍歷到某一結點時肯定不包含問題的解,則將該結點及其子樹去掉,并從該結點向根的方向回溯到其上一結點,繼續(xù)進行先序遍歷。直到找到解或所有結點均遍歷完。分治法:將規(guī)模為n的問題分解為k個規(guī)模較小的子問題,而這些子問題與原問題是同一問題,只是規(guī)模小了。例6-3:求含n個元素的集合的冪集A的冪集:由A的所有子集構成的集合。如A={1,2,3}則A的冪集為:ρ(A)={{1,2,3},{1,2},{1,3},{2,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《數(shù)據(jù)網組建與維護》課件-7.1任務1 IPv6基本配置
- 護士長試用期轉正述職報告
- 2025年高壓電工考試題庫:高壓操作安全規(guī)范電氣事故處理試題
- 2025年鄉(xiāng)村醫(yī)生考試:農村醫(yī)療衛(wèi)生服務體系資源配置試題集
- 2025年西班牙語DELE考試真題卷:DELE考試詞匯記憶與擴展訓練試題
- 2025年大數(shù)據(jù)分析師職業(yè)資格考試:Hadoop生態(tài)系統(tǒng)應用試題卷
- 2025年鄉(xiāng)村醫(yī)生考試題庫:農村醫(yī)療衛(wèi)生機構醫(yī)療廢棄物處理與監(jiān)管試題
- 如何編寫安全制度
- 立春啟示與新學期
- 房地產建設流程
- 2025年常州機電職業(yè)技術學院單招職業(yè)傾向性測試題庫參考答案
- 2024年四川大學華西醫(yī)院招聘考試真題
- 2025年安徽衛(wèi)生健康職業(yè)學院單招職業(yè)技能測試題庫及參考答案1套
- 2025年寧夏工商職業(yè)技術學院單招職業(yè)適應性測試題庫必考題
- 智慧礦山無人機自動巡檢解決方案
- 17J008擋土墻(重力式、衡重式、懸臂式)圖示圖集
- 氣體充裝安全培訓課件
- 2025年度國家鐵路局安全技術中心面向社會公開招聘工作人員5人高頻重點提升(共500題)附帶答案詳解
- 大學生就業(yè)21問知到智慧樹章節(jié)測試課后答案2024年秋西華大學
- DB3410T 47-2024 綠色金融和普惠金融服務鄉(xiāng)村振興評價體系
- 高二走讀生家長會課件
評論
0/150
提交評論