# DFS method 정의
def dfs(graph, v, visited):
# 현재 노드를 방문처리
visited[v] = True
print(v, end=' ')
# 현재 노드와 연결된 다른 노드를 재귀적으로 방문
for i in graph[v]:
if not visited[i]:
dfs(graph, i, visited)
graph = [[], [2,3,8], [1,7], [1,4,5], [3,5], [3,4], [7], [2,6,8], [1,7]]
# 각 노드가 방문된 정보를 표현
visited = [False] * 9 # [False]-> 모든 노드는 아직 방문x로 설정, 인덱스 0을 사용하지 않기 위해 크기를 1 더한 9로 설정
dfs(graph,1,visited)
# 실행결과
1 2 7 6 8 3 4 5
[Python] 그래프 탐색 알고리즘: 음료수 얼려 먹기 (0) | 2022.06.13 |
---|---|
[Python] 그래프 탐색 알고리즘: BFS (breadth-First Search) (0) | 2022.06.12 |
[Python] 그래프 탐색 알고리즘: 재귀 함수 사용의 유의 사항 (0) | 2022.06.11 |
[Python] 그래프 탐색 알고리즘: DFS/BFS_최대공약수(유클리드 호제법) (0) | 2022.06.11 |
[Python] 그래프 탐색 알고리즘: DFS/BFS_팩토리얼 (0) | 2022.06.11 |
댓글 영역