너비 우선 탐색(BFS) 구현 방법
1. 큐 사용
- BFS는 큐를 사용하여 탐색할 노드들을 관리합니다. 큐를 사용하여 각 레벨별로 노드를 순차적으로 탐색합니다.
큐 사용 예시
def bfs(graph, start):
visited = []
queue = [start]
while queue:
node = queue.pop(0)
if node not in visited:
visited.append(node)
# 리스트를 이용하여 중복 제거
queue.extend([n for n in graph[node] if n not in visited])
return visited