더북(TheBook)

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를 차례로 방문합니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.