グラフ探索:BFS と DFS
迷路を「幅優先」と「深さ優先」で探索し、広がり方の違いと最短経路を見比べます。
0
展開したマス
0
経路長(ゴール時)
—
データ構造
キュー
展開済み(濃いほど早い)
フロンティア(待ち行列)
展開中
発見した経路
壁
キューの中身(次に展開する順)
マス目をグラフと見なし、スタート S からゴール G まで探索します。
BFS(幅優先探索)は キューを使い、近いマスから波紋のように広げる ── 最短経路が必ず見つかる。
DFS(深さ優先探索)は スタックを使い、行けるところまで一気に潜る ── 最短とは限らない。
マスをクリックで壁を置けます。同じ迷路で BFS / DFS を切り替えてください。
BFS(幅優先探索)は キューを使い、近いマスから波紋のように広げる ── 最短経路が必ず見つかる。
DFS(深さ優先探索)は スタックを使い、行けるところまで一気に潜る ── 最短とは限らない。
マスをクリックで壁を置けます。同じ迷路で BFS / DFS を切り替えてください。
いま何をしている?
BFS と DFS の違い
- BFS:キュー(先入れ先出し)で近い順に展開 → 最短経路が保証される。
- DFS:スタック(後入れ先出し)で一方向に深く潜る → 速く着くこともあるが最短とは限らない。
- 展開済みマスの色の濃さ=展開の早さ。BFS は同心円状、DFS は細く伸びる。