Einzelnen Beitrag anzeigen

Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#7

AW: Baumstruktur aus Daten erzeugen: Eine Herausforderung! ;-)

  Alt 3. Jun 2014, 20:58
Wenn du die Kreise bloß erkennen willst, dann hast du es einfacher. Eine Breiten- oder Tiefensuche sollte ausreichen.

Breitensuche:
Du hast eine Menge von (unfertigen) Pfaden. In jedem Schritt erstellst du eine neue Menge, die alle Pfade enthält, die durch Herabhängen einer gültigen Folge-Station entstehen. Wenn du Kreise feststellst (den bisherigen Pfad durchgehen) oder ein Pfad das Ziel erreicht, wird er ausgegeben.

Tiefensuche:
Hänge an einen Pfad solange gültigen Folge-Station an, bis er entweder eine Zielstation erreicht oder eine schon besuchte Station erreicht. Dann gibst du den Pfad aus, gehst zurück zur letzten Entscheidung und probierst die nächste andere Abzweigung aus.

Das ist erstmal so aus dem Handgelenk, da kann man sicher noch was optimieren
Beachte, das du auch ohne Kreise exponentiell viele Pfade (in Anzahl der Stationen) bekommen kannst:
beispiel.png

Geändert von BUG ( 3. Jun 2014 um 21:06 Uhr)
  Mit Zitat antworten Zitat