Baumstruktur
Eine Baumstruktur, oft einfach Baum genannt, ist in der Informatik eine hierarchische Datenstruktur. Sie besteht aus Knoten (Nodes), die durch gerichtete Kanten verbunden sind. Es gibt einen besonderen Wurzelknoten (Root), von dem aus Beziehungen zu Kindknoten verlaufen. Jeder Knoten (außer dem Root) hat genau einen Elternknoten. Knoten können null oder mehr Kinder haben. Es gilt: Es gibt genau einen Pfad zwischen zwei Knoten, und es entsteht eine baumartige Hierarchie; ein Zyklus ist nicht erlaubt.
In der Praxis werden Bäume als gerichtete, azyklische Graphen modelliert; in der Graphentheorie spricht man meist
Typen: Es gibt Wurzelbäume, Binärbäume, mehrstellige Bäume (K-ary, variable Kindzahl). Binäre Suchbäume ordnen die Schlüssel so,
Operationen und Traversierungen: Tiefensuche (Preorder, Inorder, Postorder) und Breitensuche (Level-order). Einfügen, Entfernen, Umstrukturieren betreffen meist Subbäume.
Anwendungen: Dateisysteme, DOM in Webbrowsern, Syntaxbäume in Compilern, Organisationsstrukturen, Taxonomien und XML-/HTML-Strukturen.
Darstellung: Bäume werden durch Verweise/Zeiger implementiert. In Arrays können vollständige Bäume (wie Heaps) gespeichert werden. Speicherbedarf