
[백준] 1260번 - DFS와 BFS (C언어) [Silver2]
·
알고리즘
input1 output1 input1 output1 4 5 1 1 2 1 3 1 4 2 4 3 4 1 2 4 3 1 2 3 4 5 5 3 5 4 5 2 1 2 3 4 3 1 3 1 2 5 4 3 1 4 2 5 해당 문제는 DFS와 BFS로 간선들을 탐색한 결과를 정점 번호로 출력하는 문제이다. 해당 문제를 해결하기 위해서는 DFS와 BFS의 개념을 알고 있어야 한다. DFS(깊이 우선 탐색)이란 트리의 깊은 부분을 먼저 탐색한다는 개념으로 볼 수 있다. DFS는 스택 혹은 재귀함수를 이용한다. DFS는 각 노드를 탐색할 때 주로 사용된다. 동작 과정은 아래와 같다. 첫 시작 노드(루트 노드)를 스택에 삽입하고 방문 표시를 한다. 스택의 최상단 노드를 확인하고 그 노드와 인접한 노드를 스택에 삽입하고 방..