令和6年度秋期 応用情報技術者試験 午前 問5

分野:アルゴリズムとプログラミング|実際に出題されたIPA過去問題

次の 2 分探索木から要素 12 を削除したとき,その位置に別の要素を移動するだけで 2 分探索木を再構成するには,削除された要素の位置にどの要素を移動すればよいか。

問題の図表(IPA公式問題冊子より引用)
図表:IPA公式問題冊子より
  1.  9
  2.  10
  3.  13
  4.  14
解答・解説を見る

正解:ウ

AI解説

2分探索木からある節点を削除して1要素の移動だけで木を再構成するには、削除する節点の右部分木の最小値(中順の後続節)、または左部分木の最大値(中順の先行節)をその位置に移動させるのが基本的な手法である。本問ではこの条件を満たす要素は13である。 ア: 9は削除節点の位置に移動しても左右の大小関係(左<親<右)を保てない要素であり、正しい移動先ではない。 イ: 10も同様に、その位置に移動すると探索木としての大小関係の整合性が崩れるため、正しい移動先ではない。 ウ: 13は削除される要素12に対する中順の後続節(またはそれに相当する要素)であり、その位置に移動しても木全体の大小関係が保たれるため、正しい。 エ: 14も9・10と同様に、その位置へ移動すると木の大小関係の整合性が崩れるため、正しい移動先ではない。 💡 2分探索木の削除では「右部分木の最小値」か「左部分木の最大値」のどちらかを削除節点の位置に移動させれば、木全体の順序性(左<親<右)を保ったまま1要素の移動だけで再構成できるという性質を覚えておく。

出典:令和6年度 秋期 応用情報技術者試験 午前 問5 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。図表はIPA公式問題冊子から引用しています。著作権はIPAに帰属します。
📱 演習アプリで解く(無料・登録不要・2,640問収録)

「アルゴリズムとプログラミング」分野の攻略ポイント

データ構造・アルゴリズム・探索と整列・計算量・擬似言語・プログラム言語・データ記述言語が対象です。擬似言語のトレースは時間はかかるものの、落ち着いて表を書けば必ず正解にたどり着く「確実に取れる」問題です。

アルゴリズムとプログラミングの攻略ポイントをすべて見る(要点6項目・ひっかけ3項目)→

同じ分野(アルゴリズムとプログラミング)の過去問