우노
[Algorithm] DFS 와 BFS 의 동작 과정 간단 비교 본문
DFS
- DFS 는 스택 자료구조를 이용하며, 구체적인 동작 과정은 다음과 같습니다.
- 탐색 시작 노드를 스택에 삽입하고 방문 처리를 합니다.
- 스택의 최상단 노드와 인접한 노드들을 탐색하며, 방문하지 않은 인접 노드를 스택에 삽입하고 방문 처리한 뒤, 2번 과정을 재귀적으로 다시 실행합니다.
- 만약, 최상단 노드와 인접한 노드들 중 방문할 수 있는 노드가 없다면, 최상단 노드를 제거합니다.
- 2번의 과정을 더 이상 수행할 수 없을때까지 반복합니다.
BFS
- BFS 는 큐 자료구조를 이용하며, 구체적인 동작 과정은 다음과 같습니다.
- 탐색 시작 노드를 큐에 삽입하고 방문 처리를 합니다.
- 큐의 최하단 노드를 제거하며, 해당 노드와 인접한 노드들을 탐색하고, 방문하지 않은 인접 노드들을 전부 큐에 삽입한 뒤 방문 처리를 합니다.
- 2번의 과정을 더 이상 수행할 수 없을때까지 반복합니다.
'Algorithm > Concept' 카테고리의 다른 글
[Algorithm] 정렬 알고리즘 종류 (0) | 2022.06.06 |
---|---|
[Algorithm] DFS 와 BFS 문제 구분 방법 (0) | 2022.06.05 |
[Algorithm] N 의 범위에 따른 시간 복잡도 선택 (0) | 2022.05.27 |
[Algorithm] 너비 우선 탐색(BFS)이란? (2) | 2022.01.18 |
[Algorithm] 포드-풀커슨과 에드몬드-카프 알고리즘 (2) | 2021.12.15 |
Comments