5. 초기 설정과 메인 루프가 담긴 전체 코드는 다음과 같습니다.
[in :]
def bfs(graph, start):
visited = []
queue = [start]
while queue:
node = queue.pop(0)
if node not in visited:
visited.append(node)
neighbours = graph[node]
for neighbour in neighbours:
queue.append(neighbour)
return visited
이번에는 간단한 친구 관계 네트워크를 통해 BFS가 어떻게 작동하는지 알아봅시다.
• 레벨 1에 있는 유일한 버텍스인 Amin을 첫 버텍스로 삼아 알고리즘을 시작합니다.
• 레벨 2로 이동하여 Wasim, Nick, Mike를 하나씩 차례로 방문합니다.
• 레벨 3의 Imran, 레벨 4의 Faras를 차례로 방문합니다.