過去問解きまくり研究所 ホーム

平成31年度 春期 午前 問5

データ構造

2分探索木に関する問題

2分探索木として適切なものはどれか。ここで,数字1〜9は,各ノード(節)の値を表す。

選択肢ア〜エは原典では木の図。図から親子関係を読み取って書き写した(図そのものは復元していない)。表記は `親 ─ (左の子, 右の子)`。

答えと解説を見る

✓ これが正解イ根=4 / 4─(2, 8) / 2─(1, 3) / 8─(6, 9) / 6─(5, 7)

解説

左が小さく右が大きいという形を、すべての節で保っています。

2分探索木は、どの節から見ても左が小さく右が大きい木です。この決まりは根だけでなく、すべての節で成り立つ必要があります。さらに、直接の子だけでなく、その先の枝ぜんぶに及びます。確かめ方は単純で、節を一つずつ見て左右の大小を調べます。正解の肢では、根が四で、左の枝に一と二と三が並びます。右の枝には五から九までが並び、どれも四より大きい値です。節の二を見ると、左が一で右が三なので決まりを守っています。節の八を見ると、左の枝は五と六と七で、どれも八より小さい値です。節の六も、左が五で右が七なので守っています。どの節でも破れがないので、これが求める木です。なお、この木を左から順にたどると値が小さい順に並びます。並べ直しの手間なく順序が得られるのが、この形の利点です。探すときは根から降りるだけで済みます。

ほかの選択肢はなぜ違うのか

出典:平成31年度 春期 基本情報技術者試験 午前 問5

この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)