令和元年度 III-5

科目: 専門科目 / 分野: 情報工学部門 / 年度: 令和元年度

III-5 問題画像

出典:公益社団法人 日本技術士会「技術士第一次試験 過去問題」

木構造で開始ノードSから目的ノードGを深さ優先探索と幅優先探索で探したときに調べるノードの個数を求める問題。

解説

この問題で問われていること

探索木を深さ優先・幅優先で探索したとき、Gに到達するまでに調べるノード数の組合せを選ぶ問題。

解き方

① 深さ優先=左の枝を下まで調べてから戻る、幅優先=浅い段から左から順に調べる。個数はSとGを含める
② 深さ優先: S→1段目左→その子2つ→1段目2番目→その子(その下も)→…→1段目3番目→G で10個。幅優先: S、1段目4個、2段目を左から数えてGが5個目 → 1+4+5=10個
③ ④

正解が正しい理由

図の木で、Sの子は左から4つ、Gは3番目の子の下にある。深さ優先探索では、S、1番目の子とその子2つ、2番目の子とその子(さらにその子)ともう1つの子、3番目の子、Gの順に調べ、Gまでで10個。幅優先探索では、S(1個)、1段目の4個、2段目を左から調べてGが5個目となり、1+4+5=10個。したがって④が正しい。

各選択肢について

覚えるべきポイント

深さ優先は左の部分木を全部調べてから右へ、幅優先は1段ずつ左から。個数を数えるときは、開始ノードと目的ノードを含めるかを問題文で確認する。

キーワード: 深さ優先探索、幅優先探索、木構造、探索、情報工学部門

出題履歴

同じ問題が計2回出題されています(平成27年度、令和元年度)。

類題(同じ論点の別問題)