第十五章 數據結構 哈夫曼樹

哈夫曼樹的基本概念

在這裏插入圖片描述在這裏插入圖片描述
在這裏插入圖片描述在這裏插入圖片描述

在T集合中選取最小和次小的兩棵二叉樹作爲左,右子樹。

例題:構造哈夫曼樹 + 實例

在解決電文傳輸中,加快輸出速度,我們可以使用哈夫曼樹。
●由此可見:設計電文總長最短的二進制前綴編碼,就是以n種字符出現的頻率作權,設計一棵哈夫曼樹,由此得到的二進制前綴編碼便稱爲哈夫曼編碼。

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

哈夫曼編碼-哈夫曼樹(最優二叉樹)的應用

在這裏插入圖片描述

最優二叉樹解決問題

.數據的最小冗餘編碼問題
.譯碼的唯一性問題

關於哈夫曼編碼的結論

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

判斷是否爲哈夫曼編碼

不可能出現一個字符的哈夫曼編碼是另一個字符哈夫曼編碼的前綴
在這裏插入圖片描述

常用換算

哈夫曼編碼樹中沒有度爲1的結點。設葉子結點的個數爲n,則哈夫曼編碼樹的結點總數爲2n - 1.

在這裏插入圖片描述
哈夫曼樹最典型、最廣泛的應用是在編碼技術上。利用哈夫曼樹,構造所得的哈弗曼編碼是一種最優前綴編碼。

在這裏插入圖片描述在這裏插入圖片描述

每個樹節點有兩個指針,99個節點共有198個指針,除了沒有指針指向根節點,其餘節點都有一個指針指過去,這樣就有98個指針被使用,所以還剩100個指針未使用。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章