Ein AVL-Baum ist eine Datenstruktur aus der Informatik. Es handelt sich um einen Binärbaum, bei dem in jedem Knoten folgende Bedingung - die AVL-Bedingung - gilt:
Die Höhe des linken Teilbaums unterscheidet sich von der Höhe des rechten Teilbaums maximal um 1.
Die Höhe eines (Teil-)Baumes ist dabei definiert als das Maximum aller Abstände der im (Teil-)Baum enthaltenen Knoten von der Wurzel.
Diese Bedingung ist schwächer als die Forderung nach vollständiger Balanciertheit, stellt aber trotzdem sicher, dass der Baum nicht zu einer linearen Liste ausarten kann. Alle Operationen (Suchen, Einfügen und Löschen) sind immer mit Aufwand O(log N) durchführbar.
Nach jedem Einfügen oder Löschen eines Knotens wird in all seinen Vorgängern bis zur Wurzel überprüft, ob nun die AVL-Bedingung verletzt ist. Dies geschieht auf dem "Rückweg" der rekursiven Aufruffolge, es ist also nicht notwendig, einen separaten Prüf- und Korrekturlauf zu implementieren.
Ist an einem Knoten die Bedingung nicht mehr erfüllt, kann sie durch wenige Umordnungen von Kanten am betreffenden Knoten, seinem Vorgänger und den beiden Nachfolgern wieder hergestellt werden. Dazu ist es allerdings notwendig, in jedem Knoten die Zusatzinformation zu speichern, welcher seiner beiden Teilbäume höher ist. Sämtliche auftretenden Fälle (z.B. linker Teilbaum war vorher schon höher und ist nun noch höher geworden) lassen sich vorweg erfassen und programmieren.
Nachdem die AVL-Bedingung an einem Knoten verletzt und wieder hergestellt wurde, sind keine weiteren Korrekturen mehr notwendig.
Ursprung
Der Name AVL leitet sich von den Erfindern Adelson-Velskii und Landis ab.
Dieser Beitrag ist aus der XML-Version der deutschen WikiPedia® entwickelt worden und unterliegt inhaltlich den GNU FDL-Lizenzbestimmungen. Linkziele außerhalb der wikipedia-Inhalte unterliegen den Urheberrechten der jeweiligen Anbieter
( DirectDownloads ) Kalenderblätter druckfertig aufbereitet für Schmuckblätter zum Selbstdrucken im Word DOC6/RTF Format, je Euro 5 über Click&BuyJAN | FEB | MÄRZ APRIL | MAI | JUNI JULI | AUG | SEPT OKT | NOV | DEZ
Das Geschenk für jeden Anlass, nicht nur bei 'runden' Jubiläen Andere Einzeltage oder Zahlungsarten bitte HIER bestellen
Diese Web Site verdient ihr Geld durch Produktverkäufe (CD-ROM, downloads) und in erster Linie durch Anzeigen. Wenn Sie als Webmaster zuverlässige Partner suchen für Ihr eigenes Anzeigenschäft, dürfen Sie sich gerne auf unsere Empfehlungen stützen:
z.B.: GigaCash & ProfiWin