Ich versuche, ein DFS zu implementieren, um Zyklen in einem Zeichenfolgendiagramm zu finden. Zum Beispiel die Grafik:Wiederholen von 'False' Ausgaben
walkways_info = """\
U 3
0 1
1 2
2 0
"""
würde True zurückgeben. Ich habe zur Zeit das Problem, dass meine if-Anweisung:
if current_vertex in visited or int(graph[i].split()[1]) in visited:
es falsch ausgibt, aber ich will nicht, dass es zu diesem Zeitpunkt zur Ausgabe nichts.
Aktualisiert Code Here
ich etwas Hilfe schätzen würde.
Ich würde Ihnen vorschlagen, eine Adjazenz-Matrix basierend auf einer String-Repräsentation zu erstellen, BEVOR Sie irgendeine graphbasierte Aufgabe lösen. Auf diese Weise werden Sie in der Lage sein, bekannte und ausgefeilte Algorithmen und Implementierungen zu verwenden. – CaptainTrunky
Sehen Sie sich Ihren Code an: Der einzige Weg, um 'False' zurückzugeben, ist, wenn Ihr Diagramm leer ist! – Julien
Ich habe 'return False' außerhalb der for-Schleife hinzugefügt. Sollte dies nicht ausgelöst werden, wenn der Graph durch iteriert wird und' return True' nicht aufgerufen wird? –