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.5×1+0.3×2+0.1×3+0.1×3=1.7ビット、エは一律2ビットである。したがってウが最も短くなる。
選択肢ごとの解説
- ア1文字の符号が他の符号の先頭と重なり、区切りが判別できず復号が一意にならない。
- イ短い符号が長い符号の先頭部分になっており、語頭条件を満たさない。
- ウ正しい。語頭条件を満たし、平均符号長1.7ビットで最短になる。
- エ語頭条件は満たすが全て2ビット固定で、平均符号長が2.0ビットと長い。
同じ分野の他の問題
- 誤り検出方式である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/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。