資訊理論與編碼基礎

想對4個符號A~D分配下列長度(位元數)的碼字,做成由0與1構成的前綴碼。能做成前綴碼的碼長組合為下列何者?

  1. AA: 1、B: 2、C: 3、D: 3
  2. BA: 1、B: 2、C: 2、D: 3
  3. CA: 1、B: 1、C: 2、D: 3
查看答案與解析

正確答案:A. A: 1、B: 2、C: 3、D: 3

能做成碼長為 l₁、l₂、… 之前綴碼的條件,是克拉夫特不等式 Σ 2^(−lᵢ) ≤ 1 成立。1、2、3、3 時為 1/2 + 1/4 + 1/8 + 1/8 = 1,因此可以做成,例如 0、10、110、111。1、2、2、3 時為 1/2 + 1/4 + 1/4 + 1/8 = 9/8,1、1、2、3 時為 1/2 + 1/2 + 1/4 + 1/8 = 11/8,兩者都超過1,因此無法做成。

  • A. 正確。2^(−l) 的和恰好為1,可以做成 0、10、110、111 這樣的碼。
  • B. 和為 9/8,超過1。長度1的0與長度2的10、11已用盡位元串所有的開頭方式,因此放不下長度3的碼字。
  • C. 和為 11/8,超過1。若把0與1兩個都當作長度1的碼字,其他碼字一定會以其中之一開頭。
練習這個領域 前往領域頁面

資訊理論與編碼基礎的其他題目

  1. 正在製作由0與1構成的前綴碼,已經使用了長度2的碼字 00 與 01。在維持前綴碼條件下,可以追加之長度3碼字的最大個數為下列何者?
  2. 某資訊源以機率0.4、0.3、0.2、0.1彼此獨立地輸出符號A、B、C、D,以霍夫曼編碼進行編碼。每個符號的平均碼長為下列何者?
  3. 某資訊源以機率0.3、0.25、0.2、0.15、0.1彼此獨立地輸出符號A~E,以霍夫曼編碼進行編碼。相等的機率先選哪一個,可能會使碼字不同,但平均碼長不變。每個符號的平均碼長為下列何者?
  4. 某資訊源以機率0.6、0.3、0.1彼此獨立地輸出符號A、B、C,其熵約為1.30位元。以霍夫曼編碼對此資訊源編碼時,效率(熵 ÷ 平均碼長)最接近下列何者?
  5. 某二元資訊源以機率0.8輸出0、以機率0.2輸出1,且彼此獨立。把每2個符號合成的00、01、10、11這4種分別視為1個符號,以霍夫曼編碼進行編碼。原本每個符號的平均碼長為下列何者?