| a | b | c | d | |
|---|---|---|---|---|
| ア | 0 | 1 | 00 | 11 |
| イ | 0 | 01 | 10 | 11 |
| ウ | 0 | 10 | 110 | 111 |
| エ | 00 | 01 | 10 | 11 |
応用情報技術者試験 令和2年度 午前 問4「a,b,c,d の 4 文字から成るメッセージを符号化してビット列にする方法とし…」の正解と解説です。応用情報技術者試験の「テクノロジ系」分野の過去問で、これまでの受験者の正答率は約75%です。
ウ. a=0, b=10, c=110, d=111
正答率 74.7%(1,306人中 975人が正解)
一意に復号できるには、どの符号語も別の符号語の先頭部分にならない必要がある。そのうえで、出現頻度の高い文字に短い符号を割り当てると平均のビット長が短くなる。条件を満たすのは、a を 1 ビットにした符号と全て 2 ビットの固定長の符号で、平均長は 0.5×1 + 0.3×2 + 0.1×3 + 0.1×3 = 1.7 ビットと 2 ビットなので、前者が最短になる。