基礎理論
文字A(出現頻度5)、B(3)、C(2)、D(1)を用いてハフマン符号を構築するとき、最初に結合する2つのノードはどれか。
ア.AとB
イ.BとC
ウ.CとD正解
エ.AとD
解説
ハフマン木は「貧乏な人から先に仲間を作る」合体ゲーム。出現頻度が最も低い2つを先に結合することで、よく使う文字ほど短い符号をもらえる仕組み。
なぜ ウ が正解か
ウが正解。ハフマン符号の構築手順:①全ノードを頻度の昇順に並べる:D(1)、C(2)、B(3)、A(5)。②最小頻度の2ノードを取り出して結合:DとC→親ノード(1+2=3)。③新ノード(3)をB(3)、A(5)と共にキューに戻す。最初の結合は必ず頻度最小の2つ=CとD。
出典: AI生成問題(学習用)