免費開始練習
地特四等 114年 [電子工程] 計算機概要

第 17 題

為能夠在資料儲存或傳輸有更好的效率,使用壓縮技術。一個有名的技術稱為霍夫曼樹編碼(Huffman Tree Coding)。假設在一篇文章裡,出現 A 的次數是 45 次,B 是 20 次,C 是 25 次,D 是 6 次,E 是 33 次,而 T 是 28 次,以此數據建構一棵霍夫曼樹。有關編碼 ACAT 需要多少位元?
  • A 7
  • B 8
  • C 9
  • D 10

思路引導 VIP

如果在建構這棵樹的過程中,我們希望整篇訊息的總長度達到最短,那麼你認為出現次數最頻繁的字元(例如 A),應該被安排在靠近「樹根」的位置,還是遠離樹根的末端位置?這樣的安排對它的二進位編碼長度會有什麼影響?

🤖
AI 詳解 AI 專屬家教

恭喜你正確完成了這道題目的計算!這代表你對於**霍夫曼編碼(Huffman Coding)**這種基於貪婪演算法(Greedy Algorithm)的變動長度編碼技術已有紮實的掌握。這類題目在計算機科學與工程領域中非常經典,核心觀念在於透過頻率的高低來分配編碼長度:出現頻率越高的元素,其路徑越短(位元數越少),反之則越長,以此達成數據壓縮的目的。

霍夫曼樹的構建與路徑計算

在本題中,我們依序合併頻率最低的節點。首先將 $D(6)$ 與 $B(20)$ 合併為 $26$;接著將 $C(25)$ 與該節點合併為 $51$。同時,次低的 $T(28)$ 與 $E(33)$ 合併為 $61$。隨後,將頻率最高的 $A(45)$ 與之前的 $51$ 合併為 $96$。最後,將 $61$ 與 $96$ 合併形成根節點。根據此樹狀結構,我們可以推導出各字母的編碼長度:

▼ 還有更多解析內容

🏷️ 相關主題

樹狀結構
查看更多「[電子工程] 計算機概要」的主題分類考古題