【はばゆうせんたんさく】
幅優先探索(BFS) とは?
💡 近くから順に、じわじわ広がる探索の波
幅優先探索ってどういう探し方なの?
池に石を投げたときの波紋をイメージしてみて。出発点から近い順に同心円状に広がりながら探索していく方法だよ
具体的にはどう動くの?
どんな場面で使うの?
重みなしグラフでの最短経路探索が代表的だね。カーナビの経路探索や、SNSで『友達の友達』をたどる機能、迷路の最短解法なんかにも使われるよ
深さ優先探索と使い分けるポイントは?
計算量はどのくらいなの?
ノード数Vとエッジ数Eとして O(V+E) だよ。各ノードを1回ずつ、各エッジを1回ずつ調べるから効率的なんだ。双方向BFSという改良版もあって、スタートとゴールの両側から同時に探索すると探索範囲を大幅に減らせるよ
まとめ:ざっくりこれだけ覚えればOK!
「幅優先探索」って出てきたら「近い順に全方向へ広がりながら探す方法」と思えればだいたいOK!
📖 おまけ:英語の意味
「Breadth-First Search」 = 幅優先探索
💬 「breadth(幅)」を「first(最初に)」探索するという名前で、横に広がりながら調べていくイメージだよ