この問題は、情報理論における効率的なデータ圧縮の概念、特にハフマン符号化の考え方に基づいています。最も短いビット列を実現するためには、出現頻度の高い文字には短いビット列を、出現頻度の低い文字には長いビット列を割り当てる必要があります。これは、平均符号語長を最小化するためです。平均符号語長は、各文字の出現確率と、その文字の符号語長の積の合計で計算されます。
読み込み中...
読み込み中...
問2 a, b, c, d の4文字から成るメッセージを符号化してビット列にする方法として表のア~エの4通りを考えた。この表はa, b, c, dの各1文字を符号化するときのビット列を表している。メッセージ中でのa, b, c, dの出現頻度は,それぞれ50%, 30%, 10%, 10%であることが分かっている。符号化されたビット列から元のメッセージが一意に復号可能であって、ビット列の長さが最も短くなるものはどれか。
結論 → 詳細 → 補足 の 3 層構成
この問題は、情報理論における効率的なデータ圧縮の概念、特にハフマン符号化の考え方に基づいています。最も短いビット列を実現するためには、出現頻度の高い文字には短いビット列を、出現頻度の低い文字には長いビット列を割り当てる必要があります。これは、平均符号語長を最小化するためです。平均符号語長は、各文字の出現確率と、その文字の符号語長の積の合計で計算されます。
まず、正解の選択肢ウの平均符号語長を計算してみましょう。
a (50%): 0 (長さ1)
b (30%): 10 (長さ2)
c (10%): 110 (長さ3)
d (10%): 111 (長さ3)
平均符号語長 = (0.50 * 1) + (0.30 * 2) + (0.10 * 3) + (0.10 * 3) = 0.50 + 0.60 + 0.30 + 0.30 = 1.70 ビット/文字
次に、他の選択肢がなぜ誤りなのかを分析します。
アは、aとbでそれぞれ'0'と'1'という短い符号語を割り当てていますが、cとdにも'00'と'11'という、aやbよりも頻度が低いにも関わらず比較的短い、あるいはaの符号語とprefix(接頭辞)になってしまう誤りがあります。これにより平均符号語長が長くなります。
イは、aに'0'を割り当てていますが、b, c, dの符号語が'01', '10', '11'となっており、aの'0'がbの'01'の接頭辞となってしまうため、一意に復号できません。これは「接頭符号」の条件を満たしていません。
エは、aに'00', bに'01'を割り当てていますが、aとbの出現頻度が高いにも関わらず、より長い符号語が割り当てられています。より頻度の高い文字に短い符号語を割り当てるべきという原則に反しています。
解説は Google Gemini に IPA 公式の問題文・公式解答を入力して生成しています。 事実誤認・選択肢の取り違え・最新法令の反映漏れ等を含む可能性があるため、 重要な判断は必ず IPA 公式資料でご確認ください。
最終更新:
検証プロセス・誤り報告フローは 運営透明性レポートで公開しています。
この問題の理解を「分野全体の力」に広げるための足がかり
用語解説・選択肢分析・類題生成をその場で対話。クイズモードでは解答→解説がゼロ遷移。
基礎理論 の他の問題
データベーススペシャリスト の同じ分野を年度をまたいで演習する
データベーススペシャリスト SQL・設計対策|午後Iの頻出問題と解法
データベーススペシャリスト(DB)試験の午後I頻出問題を解説。SELECT・結合・サブクエリ・トランザクション・ER設計・正規化の解法パターンを整理し、実践的な対策を紹介します。
データベーススペシャリスト試験 出題傾向の最新分析|2024〜2025年で増えた論点と捨て論点
データベーススペシャリスト試験の直近2年の出題傾向を分析し、増加している新論点・減少している論点・捨てて良い論点を整理。学習計画の優先度付けに活用できます。
データベーススペシャリスト試験 過去問の解き方完全ガイド|AI解説で時短する5ステップ
データベーススペシャリスト試験の過去問を効率的に回すための5ステップを紹介。AIコパイロットを使った時短解説の取り方、復習タイミング、選択肢分析の手順までまとめました。
データベーススペシャリスト試験 頻出論点トップ10と押さえ方|過去5年分の傾向分析
データベーススペシャリスト試験の過去5年分の出題傾向から、合格に直結する頻出論点トップ10を抽出。各論点ごとの出題形式と効率的な押さえ方をまとめました。