この問題では、再帰処理 f(ノードn) が2分木でどのように実行されるかを問われています。f(ノードn) の定義の「1. ノードnの右に子ノードrがあれば、f(ノードr)を実行」「2. ノードnの左に子ノードlがあれば、f(ノードl)を実行」「3. 再帰処理f(ノードr), f(ノードl)を未実行の子ノード、又は子ノードがなければ、ノード自身がもつデータを出力」という順序が重要です。まず右の子、次に左の子を処理してから、それらが未実行であるか、あるいは子ノードがない場合に自身のデータを出力するという、これは「後置順走査(Postorder Traversal)」に該当します。後置順走査では、左部分木、右部分木、そして根ノードの順に処理されます。
令和6年度 春期 応用情報技術者 午前 問6
各ノードがもつデータを出力する再帰処理 f(ノード n)を定義した。この処理を,図の2分木の根(最上位のノード) から始めたときの出力はどれか。
〔f(ノードn)の定義〕
1. ノードnの右に子ノードrがあれば、f(ノードr)を実行
2. ノードnの左に子ノードlがあれば、f(ノードl)を実行
3. 再帰処理f(ノードr), f(ノードl)を未実行の子ノード、又は子ノードがなければ、ノード自身がもつデータを出力
4. 終了
選択肢
解説
結論 → 詳細 → 補足 の 3 層構成
展開閉じる
解説
結論 → 詳細 → 補足 の 3 層構成
選択肢エが正解となるのは、この後置順走査の性質を正しく反映しているからです。具体的には、まず最も右下の子ノードの処理が完了し、次にその左の子、さらにその親、というように、再帰的に処理が進み、最終的に根ノードのデータが出力されます。
他の選択肢が誤りである理由を分析します。アは、右の子、左の子、自身の順で出力されるように見えますが、右の子への再帰が完了する前に左の子の処理が開始されているように読めるため、後置順走査とは異なります。イは、左の子、自身の、右の子、という順序に見え、これは「中置順走査(Inorder Traversal)」に似ていますが、定義の「1」と「2」の順序から不適切です。ウも、右の子、自身、左の子、という順序に見え、これは「前置順走査(Preorder Traversal)」の変形や、定義の順序と矛盾する可能性があり、正しくありません。
この解説は AI 生成です(詳細)
解説テキストは Google Gemini に IPA 公式の問題文・公式解答を入力して生成しました。 人間によるレビューを行ったものと、未レビューのものが混在します。
AI は事実誤認・選択肢の取り違え・最新法令の反映漏れ等を含む可能性があります。 重要な判断は必ず IPA 公式 PDF または最新の参考書でご確認ください。
解説の検証プロセス・誤り報告フローは 運営透明性レポートで公開しています。
分野「アルゴリズムとプログラミング」の学習ポイント
この問題の理解を「分野全体の力」に広げるための足がかり
- 何が問われるか
- 計算量(O 記法)・基本データ構造・典型アルゴリズム(探索・整列)・再帰の挙動を読む力。
- 学習の進め方
- 擬似コードを実際にトレースして変数の遷移を表に書き出す習慣を付ける。スタック/キュー/木の図示が定着の鍵。
- 関連キーワード
- 計算量二分探索クイックソート再帰スタックキュー木構造
この問題を AI と深掘りする
用語解説・選択肢分析・類題生成をその場で対話。クイズモードでは解答→解説がゼロ遷移。
共有
ショート動画
関連する問題
アルゴリズムとプログラミング の他の問題
- 応用情報技術者令和5年度 春期 午前 問6従業員番号と氏名の対がn件格納されている表に線形探索法を用いて、与えられた従業員番号から氏名を検索する。この処理における平均比較回数を求める式はどれか。ここで、検索する従業員番号はランダムに出現し、探索は常に表の先頭から行う。また、与えられた従業員番号がこの表に存在しない確率をa…
- 応用情報技術者令和5年度 春期 午前 問7配列に格納されたデータ 2, 3, 5, 4,1に対して、クイックソートを用いて昇順に並べ替える。2回目の分割が終わった状態はどれか。ここで、分割は基準値より小さい値と大きい値のグループに分けるものとする。また、分割のたびに基準値はグループ内の配列の左端の値とし、グループ内の配列…
- 応用情報技術者令和5年度 春期 午前 問19ハッシュ表の理論的な探索時間を示すグラフはどれか。ここで、複数のデータが同じハッシュ値になることはないものとする。
- 応用情報技術者令和5年度 秋期 午前 問3逆ポーランド表記法(後置記法)で表現されている式 ABCD-×+において、A=16, B=8, C=4, D=2のときの演算結果はどれか。逆ポーランド表記法による式AB+は、中置記法による式A+Bと同一である。
- 応用情報技術者令和5年度 秋期 午前 問5双方向リストを三つの一次元配列 elem[i], next[i], prev[i]の組で実現する。双方向リストが図の状態のとき、要素Dの次に要素Cを挿入した後のnext[6], prev[6]の値の組合せはどれか。ここで、双方向リストは次のように表現する。 ・双方向リストの要素は…