반응형
DFS (깊이 우선탐색)
- 그래프에서 깊은 부분을 우선적으로 탐색하는 알고리즘
- 스택 자료구조( or 재귀함수)를 이용한다
- 탐색 시작 노드를 스택에 삽입하고 방문 처리를 한다.
- 스택의 최상단 노드에 방문하지 않은 인접한 노드가 하나라도 있으면 그 노드를 스택에 넣고 방문 처리합니다. 방문하지 않은 인접노드가 없으면 스택에서 최상단 노드를 꺼냅니다.
- 더이상 2번의 과정을 수행할수 없을 때까지 반복합니다.
BFS (너비 우선 탐색)
- 그래프에서 가까운 노드부터 우선적으로 탐색하는 알고리즘
- 큐 자료구조를 이용한다.
- 탐색 시작노드를 큐에 삽입하고 방문처리를 합니다.
- 큐에서 노드를 꺼낸 뒤에 해당 노드의 인접 노드 중에서 방문하지 않은 노드를 모두 큐에 삽입하고 방문 처리를 합니다.
- 더 이상 2번의 과정을 수행할 수 없을 때 까지 반복합니다.
'알고리즘 자료구조' 카테고리의 다른 글
[알고리즘] 투 포인터 (0) | 2021.03.14 |
---|---|
[자료구조] 스택, 큐 (파이썬) (0) | 2021.03.10 |
[알고리즘] 재귀 함수 (0) | 2021.03.08 |
[알고리즘] 이진탐색 알고리즘과 파라메틱서치 (0) | 2021.03.07 |
[알고리즘] 선택정렬, 삽입정렬, 퀵정렬, 계수정렬 정리 (0) | 2020.11.24 |