a,b,c,dの4文字から成るメッセージを符号化してビット列にする方法として表のア~エの4通りを考えた。この表はa,b,c,dの各1文字を符号化するときのビット列を表している。メッセージ中でのa,b,c,dの出現頻度は,それぞれ50%,30%,10%,10%であることが分かっている。符号化されたビット列から元のメッセージが一意に復号可能であって,ビット列の長さが最も短くなるものはどれか。
語頭条件を満たし出現頻度が高い文字ほど短い符号が最適
| a | b | c | d | |
|---|---|---|---|---|
| ア | 0 | 1 | 00 | 11 |
| イ | 0 | 01 | 10 | 11 |
| ウ | 0 | 10 | 110 | 111 |
| エ | 00 | 01 | 10 | 11 |
選択肢
- アa=0, b=1, c=00, d=11
- イa=0, b=01, c=10, d=11
- ウa=0, b=10, c=110, d=111
- エa=00, b=01, c=10, d=11
正解と解説
正解:ウ a=0, b=10, c=110, d=111
一意に復号するには、どの符号語も他の符号語の先頭部分になっていない(語頭条件を満たす)必要がある。この条件を満たすのは0/10/110/111と2ビット固定長の2つで、平均符号長は前者が0.5×1+0.3×2+0.1×3+0.1×3=1.7ビット、後者が2ビットとなり、前者が短い。
選択肢ごとの解説
- ア0が00の先頭、1が11の先頭になっており、語頭条件を満たさず一意に復号できない。
- イ0が01の先頭になっているため語頭条件を満たさず、復号が一意に定まらない。
- ウ正しい。語頭条件を満たし、平均符号長1.7ビットで最短となる。
- エ語頭条件は満たすが全て2ビット固定長のため平均符号長が2ビットとなり、より長い。
同じ分野の他の問題
- 誤り検出方式であるCRCに関する記述として、適切なものはどれか。2025年度 秋期 午前 問4
- 式A+B×Cの逆ポーランド表記法による表現として、適切なものはどれか。2020年度 10月試験 午前 問3
- 符号長7ビット、情報ビット数4ビットのハミング符号による誤り訂正の方法を、次のとおりとする。 受信した7ビットの符号語x…2024年度 春期 午前 問4
- 図のように16ビットのデータを4×4の正方形状に並べ、行と列にパリティビットを付加することによって何ビットまでの誤りを訂…2021年度 秋期 午前 問4
- 逆ポーランド表記法(後置記法)で表現されている式ABCD-×+において、A=16、B=8、C=4、D=2のときの演算結果…2023年度 秋期 午前 問3
最終更新:2026-08-25/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。