лучший алгоритм для поиска расстояния для всех пар, где вес ребер равен 1

Как сказано в заголовке, я пытаюсь реализовать алгоритм, который определяет расстояния между всеми парами узлов в данном графе. Но есть еще кое-что: (Вещи, которые могут вам помочь)

  • График невзвешенный. Это означает, что все ребра можно рассматривать как имеющие вес 1 .
  • | E | <= 4 * | V |
  • График довольно большой (не более ~ 144 глубины)
  • График направлен
  • Могут быть циклы
  • Я пишу свой код на Python (пожалуйста, если вы ссылаетесь на алгоритмы, код тоже был бы хорош :))

Я знаю о алгоритме Джонсона , Флойда-Варшала и Дейкстре для всех пар. Но эти алгоритмы хороши, когда граф имеет веса.

Мне было интересно, есть ли лучший алгоритм для моего случая, потому что эти алгоритмы предназначены для взвешенных графов.

Спасибо!

14
задан poke 1 May 2011 в 21:00
поделиться