Ich möchte einen Algorithmus in der Lage sein, einen optimalen Pfad zwischen zwei Vertices auf einem Graphen zu finden (mit positiven int-Gewichten). Die Sache ist mein Graph ist relativ groß (bis zu 100 Vertices). Ich habe den Dijkstra-Algorithmus betrachtet, aber als ich das Netz durchsucht habe, verwenden die meisten Implementierungen die Adjazenzmatrix, die in meinem Fall 100x100 sein wird.Punkt-zu-Punkt-Pfad in einem Graphen
Wenn Sie mir eine bestimmte Quelle empfehlen könnten, um zu lesen und zu lernen, oder besser, mir eine C++ - Implementierung zu geben, wird es großartig.
PS: Der Algorithmus muss die erforderliche Route und nicht nur die kürzeste Entfernung zwischen zwei Punkten ausgeben.
Vielen Dank für Ihre Zeit.
Wie wäre es [A * -Algorithmus] (https://en.wikipedia.org/wiki/A*_search_algorithm) - es dauert das Beste aus dijkstra und Greedy-Algorithmus und wird in vielen Videospielen verwendet. Hier kommt C++ - Implementierung: http://code.activestate.com/recipes/577457-a-star-shortest-path-algorithm/ – bashis
Ok, ich werde es vor, ich fand eine Implementierung zusammen mit einem Tutorial.Thank Sie –