[이론] DFS & BFS (+ 트리 순회)
·
IT/알고리즘
깊이 우선 탐색(DFS)와 너비 우선 탐색(BFS)은 그래프 탐색에서 자주 사용되는 기본적인 알고리즘이다.DFS는 한 노드의 끝까지 탐색한 후 돌아오는 방식이고, BFS는 가까운 노드부터 차례로 탐색해 나가는 방식이다.오늘은 DFS와 BFS의 동작 원리와 구현 방법, 그리고 각각의 특징과 활용 사례를 알아보도록 하겠다. 깊이 우선 탐색(DFS) DFS: 가능한 깊은 경로를 따라 탐색하다가 더 이상 깊이 갈 수 없을 때 뒤로 돌아가서 다른 경로를 찾는 방식stack 혹은 재귀 함수를 통해 구현할 수 있다. DFS 응용탐색 경로: 미로 찾기 및 퍼즐 문제 등에서 특정 목표 지점에 도달하는 경로 탐색백트래킹 문제: 조합, 순열 생성 등에서 백트래킹 기법과 함께 활용사이클 탐지: 그래프에서 사이클이 존재하는지..