Choose a default theme

You can change your theme from the menu

너비 우선 탐색

너비 우선 탐색은 시작점에서 가까운 단계의 정점을 먼저 방문하는 그래프 탐색이다. 보통 FIFO 큐를 사용한다.

원리

발견한 정점을 큐에 넣고 앞에서 꺼내며 이웃을 조사한다. 인접 리스트에서 정점 V개와 간선 E개를 처리하는 비용은 O(V+E)이다.

예시

모든 이동 비용이 같은 미로에서는 출발점에서 한 칸, 두 칸 거리의 위치를 순서대로 찾으므로 최소 이동 횟수를 얻을 수 있다.

주의할 점

방문 표시는 큐에 넣을 때 관리하면 중복 등록을 줄일 수 있다. 간선 가중치가 서로 다르면 일반적인 BFS 거리 계산을 그대로 적용할 수 없다.

참고 자료