Найти диаметр невзвешенного неориентированного графа - PullRequest
0 голосов
/ 18 февраля 2020

Диаметр, как в, наибольшее минимальное расстояние между любыми двумя точками на графике.

Чтобы решить эту проблему, просто сделаем BFS с любого узла, а затем выберем узел среди самых дальних узлов исходного узла. Сделайте BFS на этом новом узле, и тогда самое большое расстояние здесь - это диаметр графика.

В другом посте говорится о взвешенных ориентированных графах. Это строго для невзвешенных. Хотя тот же алгоритм может работать здесь, я спрашиваю, можем ли мы сделать это более эффективно, используя предложенный здесь go.

1 Ответ

0 голосов
/ 18 февраля 2020

diameter делает именно это.

G = nx.lollipop_graph(5, 5)
nx.diameter(G)

Вывод: 6

...