[알고리즘/Python] 일반 BFS vs 0-1 BFS(feat. 다익스트라 알고리즘)
·
코딩테스트
그래프 탐색에서 최단 경로를 찾을 때 가장 먼저 떠올리는 알고리즘은 BFS(너비 우선 탐색)입니다. 하지만 모든 간선의 가중치가 1이 아니라, 0과 1이 섞여 있는 상황이라면 일반적인 BFS만으로는 효율적인 해결이 어렵습니다. 이때 사용할 수 있는 알고리즘이 0-1 BFS입니다. 1. 일반 BFS (Breadth-First Search)가장 기본적인 탐색 알고리즘으로, 시작점에서 가까운 노드부터 차례대로 탐색합니다.특징: 모든 간선의 가중치가 동일(보통 1)할 때 사용합니다.자료구조: Queue (Python에서는 collections.deque의 append, popleft 사용)핵심 원리: 큐에 들어간 순서가 곧 시작점으로부터의 거리 순서를 보장합니다.적용 예시: 백준 2178번 미로 탐색 ..