수 많은 알고리즘 중 당연히 알고 있어야 하는 기본 알고리즘 중 하나가 DFS와 BFS이다. 오늘은 이 두 가지 알고리즘에 대해 정리를 해보려고 한다. 깊이우선"탐색" 과 너비우선"탐색"과 같이 이 알고리즘은 무언가를 탐색하는 것이다. 그렇다면 무엇을 탐색하는 것일까? 바로 그래프를 탐색하는 알고리즘이다. 그렇다면 그래프란 무엇일까? 그래프 (graph) 그래프는 요소들이 서로 복잡하게 연결되어 있는 관계를 표현하는 자료구조이다. 예를 들어, 지하철 노선도는 많은 역들이 어떻게 연결되어 있는지를 알려주며, 소셜 네트워크 서비스의 인맥 지도는 사람들의 복잡한 친구 관계를 표현한다. 그래프는 선형 자료구조들이나 트리보다 더 일반화 된 자료구조를 제공하고 많은 분야에서 널리 사용되고 있다. 정점과 간선 그래프..