DBデータベーススペシャリスト試験 午前Ⅰ

令和2年度10月 データベーススペシャリスト 午前Ⅰ 問2

問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。

問題

a,b,c,dの4文字から成るメッセージを符号化してビット列にする方法として表のア~エの4通りを考えた。この表はa,b,c,dの各1文字を符号化するときのビット列を示している。メッセージ中でのa,b,c,dの出現頻度は,それぞれ50%,30%,10%,10%であることが分かっている。符号化されたビット列から元のメッセージが一意に復号可能であって,ビット列の長さが最も短くなるものはどれか。
公式問題冊子の問2(図や選択肢を含む)
公式問題冊子の問2(図や選択肢を含む)

選択肢

  1. ア
    a:0,b:1,c:00,d:11
  2. イ
    a:0,b:01,c:10,d:11
  3. ウ
    a:0,b:10,c:110,d:111
  4. エ
    a:00,b:01,c:10,d:11
解き方のヒントを見る

文字の符号化と加重平均

符号語を連結したときの読み取り方と、出現回数に偏りがあるデータの平均について調べてみよう。

この問題で問われていること

文字ごとのビット列をつなぐとき、区切りの判断と全体の長さを、それぞれどのように検討できるだろうか。

文字の符号化と加重平均

文字ごとのビット列をつなぐとき、区切りの判断と全体の長さを、それぞれどのように検討できるだろうか。

確認ポイント

  • 固定長符号と可変長符号では、文字の区切りを読み取る手順がどう違うか。
  • 自分で簡単な符号表を作り、異なる文字列が同じビット列になる例を探せるか。
  • 短い文字列を幾つか試すことと、任意の文字列について一意に復号できることを確かめることには、どのような違いがあるか。 単純平均と加重平均の違いを調べ、100文字のメッセージを想定した総ビット数の数え方と対応付けられるか。
正解と解説を見る

正解

ウ

解説

添付の公式解答表では,午前Ⅰの問2の正解はウ。一意に復号できることと,ビット列が最も短くなることの両方が必要です。アとイは,同じビット列に複数の文字列が対応するので条件を満たさない。ウとエは一意に復号できる。各文字の出現頻度と符号長の積を合計すると,ウは平均1.7ビット/文字,エは平均2ビット/文字となるため,ウが最も短い。

添付の公式解答表では,午前Ⅰの問2の正解はウ。一意に復号できることと,ビット列が最も短くなることの両方が必要です。アとイは,同じビット列に複数の文字列が対応するので条件を満たさない。ウとエは一意に復号できる。各文字の出現頻度と符号長の積を合計すると,ウは平均1.7ビット/文字,エは平均2ビット/文字となるため,ウが最も短い。

選択肢ア

誤り。ビット列00は,cともaaとも解釈できる。同様に11は,dともbbとも解釈できるので,一意に復号できない。

選択肢イ

誤り。ビット列010は,ac(0・10)ともba(01・0)とも解釈できるので,一意に復号できない。

選択肢ウ(正解)

正しい。どの符号語も他の符号語の先頭部分になっていないので,一意に復号できる。平均符号長は0.5×1+0.3×2+0.1×3+0.1×3=1.7ビット/文字で,エより短い。

選択肢エ

誤り。全て2ビットの異なる符号なので,一意に復号できる。ただし,平均符号長は2ビット/文字で,ウの1.7ビット/文字より長い。

学習のポイント

文字ごとのビット列をつなぐとき、区切りの判断と全体の長さを、それぞれどのように検討できるだろうか。

出典:独立行政法人 情報処理推進機構(IPA)令和2年度10月 データベーススペシャリスト試験 午前Ⅰ 問2(公式資料:問題冊子(PDF) / 解答例)

関連する過去問一覧

IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針