BFS1 BFS : 너비 우선 탐색 (Java) 너비 우선 탐색 또한 그래프 탐색 이론이다. 깊이 우선 탐색과의 차이점은, BFS는 현재 노드 기준 가장 가까운 노드들을 모두 거치고 지나간다. 특징으로는 1번, 재귀적으로 작동하지 않는다. 2번, 노드에 방문했던 사실을 체크해줘야 한다. 3번, 동일 깊이의 노드들을 선입선출을 기반으로 하는 큐에 넣어두었다가 사용한다. 이런 순서로! 엄밀히 말하면 같은 깊이의 노드들을 한 번에 처리하는 것은 아니지만. 똑같이 인접 행렬로 구현한다. 알고리즘을 정렬해보면: 1. 시작 노드의 번호를 큐에 넣는다. 2. 큐에 있는 노드를 꺼낸다. 3. 해당 노드와 연결되어 있는 노드들 중에 방문하지 않은 노드들을 큐에 넣는다. 4. 큐가 비어있지 않으면 2~4번을 반복한다. 코드로 한 번 구현해보자. import java.u.. 2021. 10. 7. 이전 1 다음