Итак, я создал обход BFS, который использует график и начальную точку. Он использует граф, представленный в соседнем списке, но как бы я изменил его, чтобы использовать матрицу смежности. Мне просто нужно с чего-то начать
Список смежности:
{0:[1,2,3],1:[0,2,3],2:[0,1,4],3:[0,1],4:[2]}
Матрица смежности:
[ [0,1,1,1,0],
[1,0,1,1,0],
[1,1,0,0,1],
[1,1,0,0,0],
[0,0,1,0,0] ]
def bfs(graph, v):
all = []
Q = []
Q.append(v)
while Q != []:
v = Q.pop(0)
all.append(v)
for n in graph[v]:
if n not in Q and\
n not in all:
Q.append(n)
return all