Finden des k-kürzesten Pfades zwischen zwei Knoten


9

Bei einem gewichteten Digraphen und einer Gewichtsfunktion d ( u , v ) kann man normalerweise den Dijkstra-Algorithmus verwenden, um den kürzesten Weg zu erhalten. Was mich interessiert, ist, wie man den 2 n d- kürzesten Pfad, den 3 r d- kürzesten Weg und so weiter erhält.G=V.,E.d(u,v)2nd3rd

Fragen:

Gibt es einen effizienten Algorithmus, um den i-ten kürzesten Pfad zwischen zwei Knoten in einem gewichteten Graphen zu ermitteln?

Gibt es einen effizienten Algorithmus, um die k-kürzesten Pfade zwischen zwei Knoten in einem gewichteten Graphen zu erhalten?

Eine Antwort auf eine der beiden Fragen ist in Ordnung, obwohl ich mich frage, ob eine Antwort auf die zweite Frage effizienter erfolgen kann als Aufrufe auf eine Antwort auf die erste Frage.k


2
Bei einer Google-Suche auf "k kürzesten Pfaden" werden eine Reihe von Referenzen angezeigt, die Algorithmen für dieses Problem beschreiben. Es gibt auch einen Wikipedia-Artikel zu genau diesem Thema: en.wikipedia.org/wiki/K_shortest_path_routing
DW

@DW Machen Sie eine Antwort mit einer kurzen Zusammenfassung?
Raphael

Antworten:


5
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.