修了試験 2020-12-13実施分 基本情報技術者試験 問5
表は,文字A〜Eを符号化したときのビット表記と,それぞれの文字の出現確率を表したものである。 1文字当たりの平均ビット数は幾らか。 文字|ビット表記|出現確率(%)/A|0|50/B|10|30/C|110|10/D|1110|5/E|1111|5
正答2
解説
正解は2です。 1文字当たりの平均ビット数は、各文字のビット数に出現確率を掛けて合計した「期待値」です。 出現確率の高い文字ほど短い符号を割り当てると、平均ビット数を小さくできます。 【計算】 平均ビット数=Σ(ビット数×出現確率)です。 Aは1ビット×0.5=0.5です。 Bは2ビット×0.3=0.6です。 Cは3ビット×0.1=0.3です。 Dは4ビット×0.05=0.2です。 Eは4ビット×0.05=0.2です。 合計は0.5+0.6+0.3+0.2+0.2=1.8ビットです。 【選択肢別解説】 1:× 1.6ビットは計算結果と一致しません。 各文字のビット数と確率の積を合計すると1.8ビットになります。 2:○ 上の計算のとおり、平均ビット数は1.8ビットです。 3:× 2.5ビットは、符号の長さ1、2、3、4ビットを単純に平均した値(10÷4=2.5)です。 文字ごとの出現確率で重み付けすると1.8ビットになります。 4:× 2.8ビットは、出現確率を考えずにビット数を単純平均した値です。 平均ビット数は出現確率で重み付けして求めます。 【ポイント】 平均符号長は「ビット数×確率の合計」で求めます。 このように出現確率に応じて符号の長さを変える方式の代表がハフマン符号です。まとめて解く
修了試験 2020-12-13実施分を通しで解く(80問)→