Welche Möglichkeiten gibt es, einen Baum zu speichern?
-
Immer wieder lese ich von binären Suchbäumen und so weiter, aber wie speichert man solche Bäume überhaupt? Welche Datenstrukturen bieten sich dafür an?
-
Datenbanktechnisch z.B. so:
(beliebige Kinder) ParentID ChildID 3 4 3 2 5 1 5 7 5 8 (zwei Kinder) ParentID LeftChild RightChild 3 4 5 5 2 1 4 6 8
-
Speicher alle Knoten ab alle Kanten.
-
Welche Datenstrukturen bieten sich dafür an?
Prinzipiell fast alle. Ein binärer Baum aber nur einer, der je Knoten <2 Referenzen hällt.
-
Das einfachste Format ist wie gesagt einfach alle Knoten abzuspeichern und danach sämtliche Kanten und beim Laden lädst du einfach alle Knoten in den Speicher und die Kanten und verbindest dann alle Knoten wieder so wie deine Liste aus Kanten es dir vorgibt.
Als ID für die Knoten kannst du ja ihre Adresse nehmen.
-
Warum bist du kein Förster?
-
-
ehrlich gesagt würde ich einen binärbaum einfach zeilenweise als vom Baum sortierte Liste speichern und dann beim Einlesen den Baum neu generieren.