問題
スタック(LIFO)の典型的応用として最も適切でないものはどれか。
選択肢
- 1関数呼び出しの戻り先管理
- 2式の括弧の対応チェック
- 3幅優先探索(BFS)の補助構造
- 4バックトラッキング探索
正解
3. 幅優先探索(BFS)の補助構造
詳しい解説を見る解説を閉じる
解説
幅優先探索(BFS)は浅い側から順に展開するため FIFO であるキューを用い、スタック(LIFO)は適さない。深さ優先探索(DFS)には適合する。関数呼び出しは「最後に呼ばれた関数が最初に戻る」性質から呼出スタックで管理され、式の括弧チェックは開き括弧を push し閉じ括弧で pop して対応を検証、バックトラッキングは試行履歴を後入れ先出しで巻き戻すためスタックを用いる。データ構造の使い分けは頻出。
一問一答
全400問を繰り返し学習