In [10]:
adj_list = [[2,1],[3,0],[3,0],[8,9,2,1],[5],[7,6,4],[7,5],[6,5],[3],[3]]

In [11]:
N = len(adj_list)

In [12]:
print(N)


10

In [13]:
visited = [False] * N

In [14]:
print(visited)


[False, False, False, False, False, False, False, False, False, False]

In [15]:
def bfs(i):
    queue = []
    visited[i] = True
    queue.append(i)
    while len(queue) != 0:
        v = queue.pop(0)
        print(v, ' ', end='')
        for w in adj_list[v]:
            if not visited[w]:
                visited[w] = True
                queue.append(w)

In [16]:
print('BFS  방문 순서')


BFS  방문 순서

In [17]:
for i in range(N):
    if not visited[i]:
        bfs(i)
        print()


0  2  1  3  8  9  
4  5  7  6  

In [18]:
#visited를 queue에 들어 갔었냐? 를 가지고 하도록 변경 해 볼 것

In [ ]:


In [ ]:


In [ ]: