Este artículo sigue el del algoritmo BFS aquí: http://128mots.com/index.php/2020/02/11/parcours-en-largeur-dans-les-graphes-bfs/
La implementación de Python de este algoritmo es la siguiente:
de colecciones importar deque def bfs (gráfico, vértice): cola - deque([vertex]) distancia ' vértice: 0' padre ' vértice: Ninguno' mientras que la cola: t - tail.popleft() para vecino en gráfic[t]o: Si el vecino no está a distancia: tail.append (vecino) distanci[voisin]a - distanci[t]a - 1 padr[voisin]e 't' distancia de retorno, padre gráfico ajacence #Liste Gráfico 'A': ['B','C'], 'B': ['A','C', 'D'], 'C': ['D'], 'D':['C','A'] } distancia, pere - bfs (gráfico, 'A') impresión ("Distancias" - str (distancia)) impresión ("Pere" - str (padre))