Los árboles AVL tienen una altura equilibrada [1] y, en promedio, son más rápidos que los árboles rojo-negros que tienen un peso equilibrado. La propiedad de equilibrio: las alturas de cada uno de los dos Subárboles secundarios difieren en casi [matemáticas] 1 [/ matemáticas].
Dicho esto, el equilibrio está asegurado por una operación básica llamada: Tree Rotations [2]. Para el tipo específico de árbol, se pueden identificar cuatro casos :
- Rotación a la izquierda . Rotación en la raíz . [matemáticas] 3 [/ matemáticas] es el hijo correcto de [matemáticas] 2 [/ matemáticas], [matemáticas] 2 [/ matemáticas] es el hijo correcto de [matemáticas] 1 [/ matemáticas]. [math] 2 [/ math] se convierte en la nueva raíz, [math] 1 [/ math] toma posesión de cualquier hijo izquierdo de [math] 2 [/ math] y [math] 3 [/ math] toma posesión de cualquier hijo correcto de [math] 2 [/ math].
- Rotación a la derecha . Rotación en la raíz . [matemáticas] 3 [/ matemáticas] se deja hijo de [matemáticas] 4 [/ matemáticas], [matemáticas] 4 [/ matemáticas] se queda hijo de [matemáticas] 5 [/ matemáticas]. [math] 4 [/ math] se convierte en la nueva raíz, [math] 3 [/ math] toma posesión de cualquier hijo izquierdo de [math] 4 [/ math] y [math] 5 [/ math] toma posesión de cualquier hijo correcto de [math] 5 [/ math].
- ¿Qué tipo de ordenación usa C ++ para hacer múltiples clasificaciones?
- ¿Qué nuevos algoritmos ha creado Google?
- ¿Cuál es la complejidad de tiempo en el peor de los casos para la eliminación en una cola?
- ¿Por qué SuperMemo no es tan fácil de usar como Anki?
- ¿Cuáles son algunos algoritmos favoritos que los usuarios de Quora crearon por sí mismos?
- Rotación izquierda-derecha . Solo una rotación no es suficiente para reequilibrar: el Subárbol derecho queda pesado. Rotación a la derecha Subárbol . Al realizar una rotación a la derecha en el subárbol derecho, se prepara para la rotación definitiva a la izquierda. [matemáticas] 6 [/ matemáticas] se convierte en la raíz del Subárbol que tiene [matemáticas] 8 [/ matemáticas] como hijo derecho; finalmente, [matemática] 6 [/ matemática] se convierte en la raíz del Árbol, teniendo [matemática] 5 [/ matemática] como hijo izquierdo y [matemática] 8 [/ matemática] como hijo derecho.
- Rotación derecha-izquierda . Solo una rotación no es suficiente para reequilibrar. Rotación a la izquierda Subárbol . Al realizar una rotación hacia la izquierda en el subárbol izquierdo, se prepara para la rotación hacia la derecha definitiva. [math] 7 [/ math] se convierte en la raíz del Subárbol que tiene [math] 6 [/ math] como hijo izquierdo; finalmente [math] 7 [/ math] se convierte en la raíz del Árbol, teniendo [math] 6 [/ math] como hijo izquierdo y [math] 8 [/ math] como hijo derecho.
Notas al pie
[1] árbol AVL
[2] http://www.cise.ufl.edu/~nemo/co…