Vous êtes sur la page 1sur 11

UNIVERSIDAD MARIANO GLVEZ DE GUATEMALA

FACULTAD DE INGENIERIA


ESTRUCTURA DE DATOS
CATEDRARICA: INGA. WANDA MORALES


TEMA:
RBOLES BALANCEADOS
ACTIVIDAD:
INVESTIGACION


ALUMNO: MARLO DAVID AJU COYOTE
CARNE: 1990-10-12228



CHIMALTENANGO 21 DE ABRIL DE 2,012.
ESTRUCTURA
DE DATOS
RBOLES BALANCEADOS




INDICE

Introduccin ______________________________ i
rboles balanceados ______________________________ 1
Operaciones con rboles AVL ______________________________ 3
Ventajas de los rboles AVL ______________________________ 5
Descripcin caso de aplicacin ______________________________ 6
Conclusin ______________________________ 7
Bibliografa y e-grafa ______________________________ 8




ESTRUCTURA
DE DATOS
RBOLES BALANCEADOS










INTRODUCCION

En el estudio de estructura de datos se ha manifestado que los rboles son
una clase importante estructuras. Por lo cual se tratara a continuacin una
clase especial de ellos; los cuales son los rboles AVL.
Se trataran temas importantes relacionados con rboles AVL, las ventajas que
proporcionan y las operaciones que se pueden realizar sobre ellos. As mismo
se tratara un caso de aplicacin para ampliar las caractersticas de dichos
rboles.








ESTRUCTURA
DE DATOS
RBOLES BALANCEADOS

ARBOLES BALANCEADOS
Un rbol balanceado es un rbol binario de bsqueda el cual est perfectamente equilibrado, es
decir, balanceado en altura. Esto significa que existe un lmite en la magnitud de la diferencia que
se permite entre las alturas de cualesquiera dos subrboles que comparten una raz comn. Un
rbol est perfectamente equilibrado si, para todo nodo, el nmero de nodos en el subrbol
izquierdo y el nmero de nodos en el subrbol derecho, difieren a lo sumo en una unidad. Como se
muestra en la figura 1.

Fig. 1. rboles perfectamente equilibrados

Un rbol balanceado tambin es llamado AVL; esta denominacin viene dada en honor de los
matemticos rusos que fueron los creadores de tal estructura (Adelson - Velskii y Landys).
Un rbol AVL tambin es llamado rbol-1 balanceado en altura, o rbol BA(1), y es miembro de
una clase ms general de rboles balanceados en altura conocidos como rboles BA(k), a los
cuales se les permite estar k niveles fuera de balance. Los rboles de la figura 2 tienen la propiedad
AVL, o BA(1).
Ntese que no hay subrboles de cualquier raz que difieren en ms de un nivel.

Fig. 2. rboles AVL
Los rboles de la figura 3 no son rboles AVL. En cada uno de ellos la raz del subrbol que no est
balanceada se marca con un x.


1
ESTRUCTURA
DE DATOS
RBOLES BALANCEADOS


Fig. 3. rboles que no son AVL
Recordando que un rbol binario de bsqueda es un rbol binario en el cual cada nodo cumple con
que todos los nodos del subrbol izquierdo son menores que la raz y que todos los nodos del
subrbol derecho son mayores que la raz. As mismo que el tiempo de las operaciones sobre un
rbol binario de bsqueda son O (log n) promedio, pero el peor de los casos es O(n), donde n es el
nmero de elementos.
La propiedad de equilibrio que debe cumplir un rbol para ser AVL asegura que la profundidad del
rbol sea O(log(n)), por lo que las operaciones sobre estas estructuras no debern recorrer mucho
para hallar el elemento deseado. Sin embargo esta misma propiedad de equilibrio de los rboles
AVL implica dificultad a la hora de insertar o eliminar elementos: estas operaciones pueden no
conservar dicha propiedad.
A manera de ejemplificar esta dificultad, supongamos que al rbol AVL de enteros de la figura 4 se
le agrega el entero 3. Haciendo el procedimiento normal de insercin de rboles binarios de
bsqueda el resultado sera el rbol de la figura 5 el cual ya no cumple con la condicin de
equilibrio de los rboles AVL dado que la altura del subrbol izquierdo es de 3 y la del subrbol
derecho es de 1.



Fig.4. rbol AVL de enteros






Fig. 5. rbol que no cumple con la condicin de equilibrio de los rboles AVL
2
ESTRUCTURA
DE DATOS
RBOLES BALANCEADOS

OPERACIONES CON RBOLES AVL
ROTACIONES SIMPLES:
Es una operacin sobre un rbol binario de bsqueda que conserva el orden en sus nodos y que
ayudan a restaurar la propiedad de equilibrio de un rbol AVL al efectuar operaciones sobre el
mismo que puedan cambiarla estructura del rbol.
A continuacin se presenta un ejemplo ms concreto para la mejor comprensin:
Se desea insertar el nmero 3 en el rbol de enteros de la figura 6. La insercin se muestra
punteada en la figura 7, sin embargo la insercin provoca la prdida de equilibrio del rbol. Para
contrarrestar el inconveniente se realiza una rotacin simple. En este caso se dice que la rotacin
es izquierda ya que la prdida de equilibrio se produce hacia la izquierda. En la figura 8 se observa
el rbol luego de la rotacin en el cual la propiedad de equilibrio se ha restablecido; la rotacin
conserva el orden entre los nodos, por lo que el rbol es AVL.




Fig. 6. rbol AVL





Fig.7. rbol despus de la insercin, prdida de la propiedad de equilibrio





Fig.8. Restablecimiento del rbol AVL mediante una rotacin simple sobre el nodo de valor 5.
3
ESTRUCTURA
DE DATOS
RBOLES BALANCEADOS


Fig.9. Rotacin simple

Otro tipo de rotacin es rotacin doble que no se tratara en esta ocasin.
INSERCION:
La insercin de elementos en un rbol AVL, se realiza anloga a como se realiza para rboles
binarios de bsqueda salvo que en cada recursin del algoritmo se verifica y corrige el equilibrio del
rbol. Tambin es de suma importancia ir actualizando las alturas de cada nodo en cada recursin
dado que las rotaciones, inserciones y eliminaciones pueden modificarlas.
ELIMINACION:
Al igual que en rboles binarios de bsqueda la eliminacin sobre rboles AVL, se usa el mismo
algoritmo; a diferencia de que en cada recursin se detectan y corrigen errores por medio de un
balanceo del rbol y se actualiza la altura del nodo actual.
Primero se recorre al rbol para detectar el nodo a eliminar, una vez efectuado el recorrido existen
tres casos a diferenciar.

Si dicho nodo es una hoja, se procede a eliminarlo de inmediato.
Si dicho nodo tiene un solo hijo, el nodo puede eliminarse despus de ajustar un apuntador
del padre para saltar el nodo.
Si el nodo a eliminar tiene dos hijos que es un caso mucho ms complejo. Se procede a
reemplazar el nodo actual por el menor nodo de su subrbol derecho y luego se elimina.






4
ESTRUCTURA
DE DATOS
RBOLES BALANCEADOS

VENTAJAS DE LOS AVL:


Existen mltiples ventajas, de las cuales se describen algunas de ellas.
Al establecer una diferencia mxima permitida en la altura de cualesquiera dos subrboles,
los rboles AVL garantizan un cierto nivel mnimo de desempeo en la bsqueda.
El mantener un rbol en forma AVL conforme se insertan nodos nuevos implica el uso de
una de cuatro posibles rotaciones. Cada una de ellas se restringe a una nica rea local de
rbol. Las rotaciones ms complejas requieren slo cinco reasignaciones de apuntadores.
El balance en altura usando los mtodos AVL garantiza que se obtendr una aproximacin
razonable a un desempeo ptimo del rbol binario, a un costo que es aceptable en la
mayora de las aplicaciones que usan la memoria primaria de acceso aleatorio.


















5
ESTRUCTURA
DE DATOS
RBOLES BALANCEADOS

DESCRIPCION DEL CASO DE APLICACIN:
Como ejemplo , se considera el problema de construir un rbol perfectamente equilibrado siendo
los valores los nodos, n referencias a objetos de una clase CDatos, en ella cada objeto el nombre de
un alumno y la nota de una determinada asignatura que est cursando.
Se puede realizar distribuyendo los nodos, segn se leen, equitativamente a la izquierda y a la
derecha de cada nodo. El proceso recursivo es la mejor forma de realizar esta distribucin. Para un
nmero dado n de nodos y siendo ni (nodos a la izquierda) y nd (nodos a la derecha) dos enteros,
el proceso:
1. Utilizar un nodo raz.
2. Generar un subrbol izquierdo con ni= n/2 nodos utilizando la misma regla.
3. Generar un subrbol derecho con nd= n-ni-1 nodos utilizando la misma regla.


















6
ESTRUCTURA
DE DATOS
RBOLES BALANCEADOS









CUNCLUSION



Al tratar con rboles AVL, se determino la importancia de estos para resolver
varios problemas de estructura de datos, as mismo la complejidad que se
requiere para realizar operaciones sobre ellos.
De la misma forma se presentan ejemplos sencillos de las posibles
operaciones que se pueden realizar en los rboles AVL






7
ESTRUCTURA
DE DATOS
RBOLES BALANCEADOS







BIBLIOGRAFIA

ESTRUCTURAS DE ARCHIVOS
MICHAEL J. FOLK
BILL ZOELLICK

JAVA 2
CURSO DE PROGRAMACION
FCO. JAVIER CEBALLOS
EDITORIAL RA-MA

E-GRAFIA

RBOLES AVL
SEBASTIAN GURIN




8