목록깊이우선탐색 (1)
소피it블로그
[알고리즘] BFS, DFS 파이썬 구현
1. BFS: Breadth-First Search 너비 우선 탐색 BFS에서는 큐를 활용한다. 너비 우선 탐색이라는 개념과 FIFO의 특징을 생각해 보면 쉽게 이해할 수 있다. 큐를 사용하여 큐에 먼저 들어간 노드들을 먼저 팝해주는 것. from collections import deque def bfs(graph, node, visited): queue = deque([node]) # 첫 번째 노드로 큐를 만들어줌 visited[node] = True # 해당 노드 방문 기록 while queue: # 큐에 요소가 남아있는 동안 n = queue.popleft() # 큐의 앞에서 요소 빼줌 print(n, end = " ") # 해당 요소 출력 for i in graph[n]: # 해당 요소의 자식 ..
CS/자료구조, 알고리즘 이론
2022. 9. 20. 10:31