各ノードがもつデータを出力する再帰処理f(ノードn)を定義した。この処理を、図の2分木の根(最上位のノード)から始めたときの出力はどれか。 〔f(ノードn)の定義〕 1. ノードnの右に子ノードrがあれば、f(ノードr)を実行 2. ノードnの左に子ノードlがあれば、f(ノードl)を実行 3. 再帰処理f(ノードr),f(ノードl)を未実行の子ノード、又は子ノードがなければ、ノード自身がもつデータを出力 4. 終了

右→左→自分の再帰は右優先の後行順で根が最後に出力される

応用情報技術者試験2024年度 春期 午前6/アルゴリズムとプログラミング / データ構造

2分木。根が「+」、その左の子が「A」、右の子が「÷」。「÷」の左の子が「×」、右の子が「-」。「×」の左の子が「B」、右の子が「C」。「-」の左の子が「D」、右の子が「E」。
2分木。根が「+」、その左の子が「A」、右の子が「÷」。「÷」の左の子が「×」、右の子が「-」。「×」の左の子が「B」、右の子が「C」。「-」の左の子が「D」、右の子が「E」。

選択肢

正解と解説

正解: ED-CB×÷A+

この再帰処理は「右の子→左の子→自分自身の出力」の順に処理する、後行順(帰りがけ順)の右優先版である。根+では、まず右部分木÷を処理し、その中でも右の-(E、D、-の順に出力)、次に左の×(C、B、×の順)、最後に÷を出力する。その後に左の子Aを出力し、最後に根の+を出力するので、全体はED-CB×÷A+となる。

選択肢ごとの解説

出典:令和6年度 春期 応用情報技術者試験 午前 問6(IPA)

同じ分野の他の問題

最終更新:2026-08-25/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。