그래프 완전 탐색 기법중 하나.
시작 노드에서 탐색할 한 쪽 분기를 정하여 최대 깊이까지 탐색을 마친 후 다른 분기로 이동하여 탐색을 수행하는 알고리즘
기능 | 특징 | 시간 복잡도(노드 수: V, 에지 수 : E) | 사용 |
---|---|---|---|
그래프 완전 탐색 | 재귀 함수로 구현, 스택 자료구조 이용 | O(V + E) | 단절점 찾기, 단절선 찾기, 사이클 찾기, 위상 정렬 |
그래프를 완전 탐색하는 방법중 하나.
시작 노드에서 가까운 노드를 먼저 방문하며 탐색하는 알고리즘
기능 | 특징 | 시간 복잡도(노드 수: V, 에지 수 : E) | 사용 |
---|---|---|---|
그래프 완전 탐색 | FIFO 탐색, Queue 자료구조 사용 | O(V + E) | 단절점 찾기, 단절선 찾기, 사이클 찾기, 위상 정렬 |
BFS를 시작할 노드를 정한 후 사용할 자료구조 초기화 하기
- 방문한 노드를 체크하기 위한 배열 필요
- 탐색을 위해 큐를 사용
큐에서 노드를 꺼낸 후 꺼낸 노드의 인접 노드를 다시 큐에 삽입
큐 자료구조에 값이 없을 때까지 반복