Suche nach längster Pfad in einem Graphen

Ich versuche mich zu lösen, ein Programm, wo ich die max Anzahl von Städten angeschlossen, die für eine gegebene Liste von Routen.

zB:
wenn die angegebene route ist [['1', '2'], ['2', '4'], ['1', '11'], ['4', '11']]
dann max Städten verbunden werden 4
Einschränkung ist, kann ich nicht besuchen, eine Stadt, die ich bereits besucht habe.

Brauche ich Ideen, wie in, wie Sie Fortschritte.

Für jetzt, Was ich nachgedacht habe ist, wenn ich könnte in der Lage sein, um ein Wörterbuch zu erstellen mit Städten wie ein Schlüssel und wie viele andere Städte seine verbunden als Wert, ich bekomme irgendwo in der Nähe der Lösung(hoffe ich).
zB: Mein Wörterbuch {'1': ['2', '11'], '4': ['11'], '2': ['4']}
für die oben angegebene Eingabe.
Ich will Hilfe für das weitere Vorgehen und Hinweise, wenn ich etwas fehlt.

  • In Bezug auf die algorithmen, Sie können look into Tiefe-zuerst-Suche oder Breite-zuerst-Suche
  • Danke. Ich ging durch die Seiten. Ich würde schätzen, viel mehr, wenn Sie mir helfen bei der Umsetzung oder einfach nur erläutern, wie es zu implementieren.
  • Die längste-Wege-problem ist ein NP-hartes problem. Siehe en.m.wikipedia.org/wiki/Longest_path_problem. Sie möchten möglicherweise verwenden Sie eine Grafik-Bibliothek, oder verwenden Sie einen bekannten Algorithmus, um es zu lösen.
Schreibe einen Kommentar