[Java- Algorithm] 너비 우선 탐색법(BFS과 큐(Queue)
·
JAVA-기초/JAVA기본
너비 우선 탐색법(BFS)이란? File:Breadth-First-Search-Algorithm.gif - Wikimedia Commons No higher resolution available. commons.wikimedia.org 위의 GIF는 BFS이고 아래는 DFS이다. 차이점을 먼저 확인해보자. ✅공통점 방문 여부 확인을 통해 한 번 지나간 노드는 다시 방문하지 않는다. ✅차이점 DFS는 정점(1)에서 연결된 노드를 순서대로 아래로 내려가며 다음 노드가 없는 경우 다음 연결된 노드로 이동하며 탐색한다. 또한 재귀호출 및 스택방식으로 코드를 구현한다. BFS는 같은 레벨(가장 가까운 노드)에서 검색을 시작하며 최단 거리를 탐색한다. 큐 방식으로 코드를 구현한다. 배열에서 사용하는 경우 방향 데이..