古詩詞大全網 - 成語故事 - 霍夫曼樹

霍夫曼樹

哈弗曼樹就是每回將2個最小的並1個。

過程大約如下:

8,2,5,3,2,17,4

2+2=4

3,4,4,5,8,17

3+4=7

4,5,7,8,17

4+5=9

7,8,9,17

7+8=15

9,15,17

9+15=24

17,24

17+24=41

這個樹大概是這樣的,分號是某個點的兩個子節點寫完了的意思,意會下:

41

24 17

15 9;

7 8; 4 5;

3 4; 2 2;

哈弗曼樹的形態是不壹定唯壹的

因此這個也是可以的

41

24 17

15 9;

7 8; 4 5;

3 4;

2 2;

她們的帶權路徑長度分別是

3*4+4*4+8*3+2*4+2*4+5*3+17*1=100

3*4+2*5+2*5+8*3+4*3+5*3+17*1=100

都是帶全路徑長度最短的生成樹

擴展資料:

簡介

在計算機數據處理中,哈夫曼編碼使用變長編碼表對源符號(比如文件中的1個字母)進行編碼,其中變長編碼表是通過壹種評估來源符號出現機率的方法得到的,出現機率高的字母使用較短的編碼,反之出現機率低的則使用較長的編碼,這便使編碼之後的字符串的平均長度、期望值降低,從而達到無損壓縮數據的目的。

哈夫曼編碼的起源:

哈夫曼編碼是 1952 年由 David A. Huffman 提出的壹種無損數據壓縮的編碼算法。哈夫曼編碼先統計出每種字母在字符串裏出現的頻率,根據頻率建立壹棵路徑帶權的二叉樹,也就是哈夫曼樹,樹上每個結點存儲字母出現的頻率,根結點到結點的路徑即是字母的編碼,頻率高的字母使用較短的編碼,頻率低的字母使用較長的編碼,使得編碼後的字符串占用空間最小。

百度百科-哈夫曼樹