各ノードがもつデータを出力する再帰処理 f(ノードn) を定義した。この処理を、図の2分木の根 (最上位のノード) から始めたときの出力はどれか。
          
          〔f(ノードn) の定義〕
・1. ノードn の右に子ノードr があれば、f(ノードr) を実行
・2. ノードn の左に子ノード rがあれば、f(ノードl) を実行
・3. 再帰処理 f(ノードr)、f(ノードl) を未実行の子ノード、又は子ノードがなければ、ノード自身がもつデータを出力
・4. 終了
 
          
ア +÷−ED×CBA
イ ABC×DE−÷+
ウ E−D÷C×B+A
エ ED−CB×÷A+
エ
以下のように出力していく。
          最上位のノードは+であるのでf(ノード+)を実行
           ノード+の右に子ノード÷があるので f(ノード÷) を実行
            ノード÷の右に子ノード−があるので f(ノード−) を実行
             ノード−の右に子ノードEがあるので f(ノードE) を実行
              未実行のノードがないのでEを出力
             ノード−の左に子ノードDがあるので f(ノードD) を実行
              未実行のノードがないのでDを出力
             未実行のノードがないので−を出力
            ノード÷の左に子ノード×があるので f(ノード×) を実行
             ノード−の右に子ノードCがあるので f(ノードC) を実行
              未実行のノードがないのでCを出力
             ノード−の左に子ノードBがあるので f(ノードB) を実行
              未実行のノードがないのでBを出力
             未実行のノードがないので×を出力
            未実行のノードがないので÷を出力
           ノード+の左に子ノードAがあるので f(ノードA) を実行
            未実行のノードがないのでAを出力
           未実行のノードがないので+を出力
          終了
| 問5 | 目次 | 問7 |