14 Stimmen

Balancieren eines Binärbaums (AVL)

Ok, dies ist ein weiteres Beispiel aus dem Bereich der Theorie für die CS-Leute hier.

In den 90er Jahren war ich bei der Einführung von BST recht erfolgreich. Das Einzige, was ich nie in den Griff bekam, war die Komplexität des Algorithmus zum Ausgleich eines Binärbaums (AVL).

Könnt ihr mir dabei helfen?

0voto

Rocky Punkte 141

Um einen AVL-Baum zu balancieren, habe ich gerade eine Reihe von Funktionen geschrieben, die ich mit allen hier teilen möchte. Ich denke, diese Implementierung ist einwandfrei. Rückfragen/Fragen/Kritik sind natürlich willkommen:

http://uploading.com/files/5883f1c7/AVL_Balance.cpp/

Da ich ein Neuling auf Stackoverflow bin, habe ich versucht, meinen Code hier zu posten, bin aber mit schlechten Formatierungsproblemen hängen geblieben. Also habe ich die Datei über den obigen Link hochgeladen.

Zum Wohl.

0voto

cos Punkte 87

Es gibt eine vollständige Implementierung eines sich selbst ausgleichenden Avl-Baums @ http://code.google.com/p/self-balancing-avl-tree/ . es implementiert außerdem Verkettungs- und Aufteilungsoperationen in logarithmischer Zeit sowie eine Map/Multimap-Sammlung

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X