Das Problem ist, wie der Titel andeutet, das Diagramm ist in Adjazenzliste aufgeführt. Mein Ansatz ist, DFS in irgendeinem Eckpunkt aufzurufen, und immer wenn ich einen besuchten Eckpunkt während meines rekursiven DFS-Schritts betrachte, inkrementiere ich den Zähler einer globalen Variablen beginnend mit 0 und rufe DFS nicht für diesen besuchten Eckpunkt auf (wie allgemein üblich). Wird das funktionieren, denke ich richtig? Ich habe auch keinen relevanten Artikel im Internet gefunden, um über #Anzahl von Zyklen in ungerichteten Graphen zu erfahren.Anzahl der Zyklen in einem ungerichteten Graphen
Ausarbeitung: Ich meine, eine einfache DFS-Methode zu verwenden. Während wir im rekursiven Schritt beim Auffinden eines besuchten Eckpunkts nichts tun, erhöhe ich den globalen Variablenwert counter
für diese Situation. Ich tue dies, denn wenn ich auf eine besuchte Ecke stoße, bedeutet das, dass ich einen Zyklus vollende. Ich behaupte das: Jeder Zyklus im Graphen wird nur einmal (atleast und fast einmal) in irgendeinem DFS-Lauf angetroffen. BIN ICH IN DIESEM ANSPRUCH KORREKT?
Edit: Keine Kanten zurück
Ich nehme an, Sie bedeuten Anzahl * einfache * Zyklen? Geben Sie auch weitere Details bitte, von meinem Verständnis von dem, was Sie vorschlagen, werden Sie auch bei der Entdeckung eines * Cross Edge * – amit
Ya ich meine einfach erhöhen Siehe bitte die Ausarbeitung in der Frage. – Akash
[Finden aller Zyklen in ungerichteten Graphen.] (http://stackoverflow.com/questions/12367801/finding-all-cycles-in-undirected-graphs) – Dukeling