Árbol AVL

Páginas: 8 (1861 palabras) Publicado: 29 de octubre de 2015
Árbol AVL
Un árbol AVL es un tipo especial de árbol binario ideado por los matemáticos rusos  HYPERLINK "https://es.wikipedia.org/wiki/Georgii_Adelson-Velskii" \o "Georgii Adelson-Velskii" Adelson-Velskii y  HYPERLINK "https://es.wikipedia.org/wiki/Yevgeniy_Landis" \o "Yevgeniy Landis" Landis. Fue el primer árbol de búsqueda binario auto-balanceable que se ideó.
DescripcionEl árbol AVL tomasu nombre de las iniciales de los apellidos de sus inventores,  HYPERLINK "https://es.wikipedia.org/wiki/Georgii_Adelson-Velskii" \o "Georgii Adelson-Velskii" Georgii Adelson-Velskii y  HYPERLINK "https://es.wikipedia.org/wiki/Yevgeniy_Landis" \o "Yevgeniy Landis" Yevgeniy Landis. Lo dieron a conocer en la publicación de un artículo en 1962, «An algorithm for the organization of information» («Unalgoritmo para la organización de la información»).
Los árboles AVL están siempre equilibrados de tal modo que para todos los nodos, la altura de la rama izquierda no difiere en más de una unidad de la altura de la rama derecha o viceversa. Gracias a esta forma de equilibrio (o balanceo), la complejidad de una búsqueda en uno de estos árboles se mantiene siempre en orden de complejidad O(log n).El factor de equilibrio puede ser almacenado directamente en cada nodo o ser computado a partir de las alturas de los subárboles.
Para conseguir esta propiedad de equilibrio, la inserción y el borrado de los nodos se ha de realizar de una forma especial. Si al realizar una operación de inserción o borrado se rompe la condición de equilibrio, hay que realizar una serie de rotaciones de los nodos.Los árboles AVL más profundos son los árboles de Fibonacci.
Definición de la altura de un árbol
Sea  un árbol binario de búsqueda y sean  y  sus subárboles, su altura , es:
 si el árbol  contiene solo la raíz
 si contiene más nodos
Definición de árbol AVL
Un árbol vacío es un árbol AVL
Si  es un árbol no vacío y  y  sus subárboles, entonces  es AVL si y solo si:
 es AVL
 es AVL

Factorde Equilibrio
Cada nodo, además de la información que se pretende almacenar, debe tener los dos punteros a los árboles derecho e izquierdo, igual que los árboles binarios de búsqueda(ABB), y además el dato que controla el factor de equilibrio.
El factor de equilibrio es la diferencia entre las alturas del árbol derecho y el izquierdo:
FE = altura subárbol derecho - altura subárbol izquierdo;Por definición, para un árbol AVL, este valor debe ser -1, 0 ó 1.
Si el factor de equilibrio de un nodo es:
0 -> el nodo está equilibrado y sus subárboles tienen exactamente la misma altura.
1 -> el nodo está equilibrado y su subárbol derecho es un nivel más alto.
-1 -> el nodo está equilibrado y su subárbol izquierdo es un nivel más alto.
Si el factor de equilibrio  es necesarioreequilibrar.
Operaciones
Las operaciones básicas de un árbol AVL implican generalmente el realizar los mismos algoritmos que serían realizados en un árbol binario de búsqueda desequilibrado, pero precedido o seguido por una o más de las llamadas "rotaciones AVL".
Rotaciones
El reequilibrado se produce de abajo hacia arriba sobre los nodos en los que se produce el desequilibrio. Pueden darse doscasos: rotación simple o rotación doble; a su vez ambos casos pueden ser hacia la derecha o hacia la izquierda.
Rotación simple a la derecha
De un árbol de raíz (r) y de hijos izquierdo (i) y derecho (d), lo que haremos será formar un nuevo árbol cuya raíz sea la raíz del hijo izquierdo, como hijo izquierdo colocamos el hijo izquierdo de i (nuestro i’) y como hijo derecho construimos un nuevoárbol que tendrá como raíz, la raíz del árbol (r), el hijo derecho de i (d’) será el hijo izquierdo y el hijo derecho será el hijo derecho del árbol (d).
2663190-62357000-441960-68072000
op rotDer: AVL{X} -> [AVL{X}] .
eq rotDer(arbolBin(R1, arbolBin(R2, I2, D2), D1)) ==
arbolBin(R2, I2, arbolBin(R1, D2, D)) .
Rotación simple a la izquierda
De un árbol de raíz (r) y de hijos izquierdo (i)...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Arboles AVL
  • Arboles avl
  • Árbol avl
  • Arboles Avl
  • Arboles AVL
  • Arbol AVL
  • Arboles Avl
  • Arbol avl

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS