2010-08-07 10 views
11

Wir haben es hier mit einem ähnlichsten Neighbour-Algorithmus zu tun. Ein Teil des Algorithmus beinhaltet die Suche in Reihenfolge über einen Baum.Kann ein nicht binärer Baum in der Reihenfolge tranversiert werden?

Die Sache ist, dass wir bis jetzt diesen Baum nicht zum Binärcode machen können.

Gibt es ein analoges in der Reihenfolge Traversal für nicht binäre Bäume. Insbesondere denke ich, es ist nur die Knoten durchquert von links nach rechts (und Verarbeiten des übergeordneten Knoten nur einmal? ")

Irgendwelche Gedanken?

Update

Dieser Baum in jedem Knoten eine haben kleiner Graph von n Objekten Jeder Knoten hat n Kinder (1 für jedes Element im Graphen), von denen jeder ein anderer Graph sein wird, also seine "Art von" ab Baum, ohne all die Überlauf - Unterlauf - Mechanik die am ähnlichsten in der Reihenfolge Traversal wäre ähnlich zu einem Baum inorder traversal?

Vielen Dank im Voraus.

Antwort

9

Ja, aber Sie müssen definieren, was die Bestellung ist. Post und Pre-Order sind identisch, aber inorder nimmt eine Definition des Vergleichs der Zweige mit den Knoten vor.

+0

Guter Punkt. "linke" und "rechte" Unterbäume (und die dazwischen liegenden Knoten) könnten eine Verallgemeinerung haben, aber es ist wahrscheinlich besser, die Anforderungen in einem Fall wie diesem explizit aufzulisten. –

0

Es gibt kein einfaches Analogon der In-Order-Sequenz für andere Bäume als Binärbäume (tatsächlich ist In-Order eine Möglichkeit, sortierte Elemente aus einem binären Suchbaum zu erhalten).

Sie finden weitere Einzelheiten in "Die Kunst der Computerprogrammierung" von Knuth, vol. 1, Seite 336.

Wenn Breitensuche Ihren Zweck erfüllen kann, dann können Sie das verwenden.

Verwandte Themen