Heim > Java > javaLernprogramm > Hauptteil

AVL-Bäume

王林
Freigeben: 2024-07-25 08:04:13
Original
668 Leute haben es durchsucht

AVL Trees

AVL Tree ist ein ausgewogener binärer Suchbaum. Der Beitrag führte binäre Suchbäume ein. Die Such-, Einfüge- und Löschzeiten für einen Binärbaum hängen von der Höhe des Baums ab. Im schlimmsten Fall beträgt die Höhe O(n). Wenn ein Baum perfekt ausbalanciert ist – also ein vollständiger Binärbaum – beträgt seine Höhe log n. Können wir einen perfekt ausgeglichenen Baum erhalten? Ja, aber dies wird kostspielig sein. Der Kompromiss besteht darin, einen ausgewogenen Baum beizubehalten – das heißt, die Höhen der beiden Teilbäume jedes Knotens sind ungefähr gleich.

AVL-Bäumesind gut ausbalanciert. AVL-Bäume wurden 1962 von zwei russischen Informatikern, G. M. Adelson-Velsky und E. M. Landis, erfunden (daher der Name AVL). In einem AVL-Baum beträgt der Unterschied zwischen den Höhen der beiden Teilbäume jedes Knotens 0 oder 1. Es kann gezeigt werden, dass die maximale Höhe eines AVL-Baums O(log n) beträgt.

Der Vorgang zum Einfügen oder Löschen eines Elements in einen AVL-Baum ist derselbe wie in einem regulären binären Suchbaum, mit der Ausnahme, dass Sie den Baum nach einem Einfüge- oder Löschvorgang möglicherweise neu ausbalancieren müssen. Der Balance-Faktor eines Knotens ist die Höhe seines rechten Teilbaums minus der Höhe seines linken Teilbaums. Ein Knoten gilt als ausgeglichen, wenn sein Ausgleichsfaktor -1, 0 oder 1 ist. Ein Knoten gilt als linkslastig, wenn sein Balancefaktor -1 ist, und als rechtslastig, wenn sein Balancefaktor +1 ist .

Das obige ist der detaillierte Inhalt vonAVL-Bäume. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!