시작 정점의 한 방향으로 갈 수 있는 경로가 있는 곳까지 깊이 탐색하다가 갈 수 있는 곳이 없으면, 가장 마지막에 만났던 갈림길 간선이 있는 정점으로 돌아와 다른 방향의 정점으로 탐색을 계속 반복하여 모든 정점을 방문하는 방법
💡 특징
사용 예시
def dfs(n): # dfs 정의
visited[n] = True
print(n, end=' ')
for i in graph[n]:
if not visited[i]:
dfs(i)
graph = [[],[2,5,9],[3],[4],[],[6,8],[7],[],[],[10],[]]
visited = [False] * len(graph) #방문 여부 처리
print(dfs(1))
#출력 : 1 2 3 4 5 6 7 8 9 10
출처
https://edder773.tistory.com/45
https://hudi.blog/dfs-bfs/