平成30年度 春期 午前 問2
基礎理論
1文字当たりの平均ビット数
表は,文字 A〜E を符号化したときのビット表記と,それぞれの文字の出現確率を表したものである。1 文字当たりの平均ビット数は幾らか。
| 文字 | ビット表記 | 出現確率(%) |
|---|---|---|
| A | 0 | 50 |
| B | 10 | 30 |
| C | 110 | 10 |
| D | 1110 | 5 |
| E | 1111 | 5 |
- ア1.6
- イ1.8
- ウ2.5
- エ2.8
答えと解説を見る
✓ これが正解イ1.8
解説
符号の長さに出現確率を掛けて足すと 1.8 です。
設問は、五つの文字の符号と出現確率から、1 文字当たりの平均ビット数を求めさせています。ここでいう平均は、個数で割った値ではなく、出現確率を重みにした加重平均です。まず符号の長さを数えると、0 が 1 ビット、10 が 2 ビット、110 が 3 ビット、1110 と 1111 がそれぞれ 4 ビットです。次に確率を掛けて足します。1 × 0.50 が 0.50、2 × 0.30 が 0.60、3 × 0.10 が 0.30、4 × 0.05 が 0.20 と 0.20 で、合計は 1.80 になります。重み付けが成り立つかどうかは、50 + 30 + 10 + 5 + 5 が 100 パーセントになることで先に確かめられます。出現しやすい文字ほど短い符号を割り当てるという、ハフマン符号の考え方が基盤にあります。
ほかの選択肢はなぜ違うのか
- ア1.6:五つある文字のうち四つぶんしか足していない値です。長さ 4 の符号をもつ文字を一つ数え落とすと、その寄与である 0.2 が欠けて、この数になります。
- ウ2.5:符号の長さとして現れる 1、2、3、4 の四種類を、そのまま四で割った値です。どの長さが何回出てくるかを無視しており、重みのない単純な平均になっています。
- エ2.8:五つの文字の符号の長さを全部足して五で割った値です。1 と 2 と 3 と 4 と 4 の和である 14 を 5 で割ると得られますが、出現のしやすさがまったく効いていません。
出典:平成30年度 春期 応用情報技術者試験 午前 問2(改変:原典の図表をテキストに書き起こした)
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)