그래프를 탐색하는 방법은 크게 1) 깊이 우선 탐색(Depth-First Search, DFS)과 2) 너비 우선 탐색(Breadth-First Search, BFS)이 있다. 이때, 그래프는 정점(node)과 그 정점을 연결하는 간선(edge)으로 이루어진 자료구조로, 그래프를 탐색한다는 것은 하나의 정점으로부터 시작해 차례대로 모든 정점을 한 번씩 방문하는 것을 의미한다. 1. 깊이 우선 탐색 (Depth-First Search , DFS) : 최대한 깊이 내려간 뒤, 더이상 깊이 갈 곳이 없을 경우 옆으로 이동 루트 노드(또는 임의의 노드)에서 시작해 다음 branch로 넘어가기 전, 해당 branch를 완벽하게 탐색하는 방식이다. 모든 노드를 방문하고자 하는 경우에 이 방법을 선택함 깊이 우선 탐..