SlideShare una empresa de Scribd logo
1 de 9
ARBOL AA


EDWIN GUILLERMO GONZALEZ J.


       ING. SISTEMAS
Es un tipo de árbol binario de búsqueda
autobalanceable utilizado para almacenar y
recuperar información ordenada de manera
eficiente. Usado en informática para organizar
información compuesta por datos comparables.

Los árboles AA reciben el nombre de su inventor,
Arne Andersson.
Árbol binario de búsqueda
             autobalanceable



Es un árbol binario de búsqueda que intenta
mantener su altura, o el número de niveles de
nodos bajo la raíz, tan pequeños como sea
posible en todo momento, automáticamente.
Balanceo


Los árboles AA son una variación del árbol rojo-negro, que a su vez
es una mejora del árbol binario de búsqueda. A diferencia de los
árboles rojo-negro, los nodos rojos en un árbol AA sólo pueden
añadirse como un hijo derecho.


En un árbol AA, al cumplirse el estricto requisito de que sólo
los enlaces derechos pueden ser rojos, sólo es necesario
considerar dos formas de balanceo:
Implementación

Los árboles AA se implementan con la idea de un nivel en lugar de la
de un color, a diferencia de los árboles rojo-negro. Cada nodo tiene
un campo nivel y se deben cumplir las siguientes condiciones para
que el árbol sea válido:

El nivel de un nodo hoja es uno.

El nivel de un hijo izquierdo es estrictamente menor que el de su
padre.

El nivel de un hijo derecho es menor o igual que el de su padre.

El nivel de un nieto derecho es estrictamente menor que el de su
abuelo.

Cada nodo de nivel mayor que uno debe tener dos hijos.
Operaciones de Equilibrio


Se necesitan dos operaciones para mantener el equilibrio en un árbol AA.
Estas operaciones se llaman torsión (skew) y división (split). La torsión es una
rotación derecha que se realiza cuando una inserción o un borrado
genera un enlace horizontal izquierdo, puede pensarse como un enlace
rojo izquierdo en el contexto del árbol rojo-negro. La división es una
rotación izquierda condicional que tiene lugar cuando una inserción o un
borrado crea dos enlaces horizontales derechos, lo que de nuevo se
corresponde con dos enlaces rojos consecutivos en el contexto de los
árboles rojo-negro.      Split                    Skew
 El nivel de un hijo izquierdo debe ser menor que el nivel
de su padre.

El nivel de un hijo derecho debe ser menor o igual al nivel
de su padre.

El nivel de un nieto derecho debe ser menor que el nivel
de su abuelo.

Las hojas son de nivel 1.

Los nodos que no son hojas deben tener dos hijos.
Insertar
Eliminar

Más contenido relacionado

La actualidad más candente

Arboles presentacion
Arboles presentacionArboles presentacion
Arboles presentacion
jenny
 
Ordenamiento con árbol binario
Ordenamiento con árbol binarioOrdenamiento con árbol binario
Ordenamiento con árbol binario
edwinosuna
 
Arbol b+
Arbol b+Arbol b+
Arbol b+
cesarpa
 
Arboles binarios
Arboles binariosArboles binarios
Arboles binarios
daniel9026
 

La actualidad más candente (20)

Estructura de Datos - Unidad 4 Estructuras no lineales
Estructura de Datos - Unidad 4 Estructuras no linealesEstructura de Datos - Unidad 4 Estructuras no lineales
Estructura de Datos - Unidad 4 Estructuras no lineales
 
Árboles Rojo - Negro
Árboles Rojo - NegroÁrboles Rojo - Negro
Árboles Rojo - Negro
 
Arbol rojo y negro
Arbol rojo y negroArbol rojo y negro
Arbol rojo y negro
 
Arboles Binarios
Arboles BinariosArboles Binarios
Arboles Binarios
 
Programacion 3. Arboles B+
Programacion 3. Arboles B+Programacion 3. Arboles B+
Programacion 3. Arboles B+
 
Arboles En Estructura de Datos
Arboles En Estructura de DatosArboles En Estructura de Datos
Arboles En Estructura de Datos
 
Arboles presentacion
Arboles presentacionArboles presentacion
Arboles presentacion
 
Indices tipo arbol b+
Indices tipo arbol b+Indices tipo arbol b+
Indices tipo arbol b+
 
Algoritmos de Ordenamiento externo
Algoritmos de Ordenamiento externoAlgoritmos de Ordenamiento externo
Algoritmos de Ordenamiento externo
 
Listas doblemente enlazadas
Listas doblemente enlazadasListas doblemente enlazadas
Listas doblemente enlazadas
 
Ordenamiento con árbol binario
Ordenamiento con árbol binarioOrdenamiento con árbol binario
Ordenamiento con árbol binario
 
Mapa Conceptual
Mapa ConceptualMapa Conceptual
Mapa Conceptual
 
Árboles binarios, ABB y AVL
Árboles binarios, ABB y AVLÁrboles binarios, ABB y AVL
Árboles binarios, ABB y AVL
 
Arboles M-Way, 2-3 y 2-3-4
Arboles M-Way, 2-3 y 2-3-4Arboles M-Way, 2-3 y 2-3-4
Arboles M-Way, 2-3 y 2-3-4
 
Arboles Binarios y Arboles Binarios de Busqueda
Arboles Binarios y Arboles Binarios de BusquedaArboles Binarios y Arboles Binarios de Busqueda
Arboles Binarios y Arboles Binarios de Busqueda
 
Listas
ListasListas
Listas
 
Arbol b+
Arbol b+Arbol b+
Arbol b+
 
Ordenamiento por insercion
Ordenamiento por insercionOrdenamiento por insercion
Ordenamiento por insercion
 
COLAS
COLASCOLAS
COLAS
 
Arboles binarios
Arboles binariosArboles binarios
Arboles binarios
 

Similar a Arbol aa (8)

áRbol avl
áRbol avláRbol avl
áRbol avl
 
Arn doniel acosta
Arn doniel acostaArn doniel acosta
Arn doniel acosta
 
Arbol AA
Arbol AAArbol AA
Arbol AA
 
Arbol AA
Arbol AAArbol AA
Arbol AA
 
2.4.2 Clasificación de árboles.pdf
2.4.2 Clasificación de árboles.pdf2.4.2 Clasificación de árboles.pdf
2.4.2 Clasificación de árboles.pdf
 
Arboles de busqueda
Arboles de busquedaArboles de busqueda
Arboles de busqueda
 
Arbol Rojo y Negro
Arbol Rojo y NegroArbol Rojo y Negro
Arbol Rojo y Negro
 
Árbol rojo-negro
Árbol rojo-negroÁrbol rojo-negro
Árbol rojo-negro
 

Arbol aa

  • 1. ARBOL AA EDWIN GUILLERMO GONZALEZ J. ING. SISTEMAS
  • 2. Es un tipo de árbol binario de búsqueda autobalanceable utilizado para almacenar y recuperar información ordenada de manera eficiente. Usado en informática para organizar información compuesta por datos comparables. Los árboles AA reciben el nombre de su inventor, Arne Andersson.
  • 3. Árbol binario de búsqueda autobalanceable Es un árbol binario de búsqueda que intenta mantener su altura, o el número de niveles de nodos bajo la raíz, tan pequeños como sea posible en todo momento, automáticamente.
  • 4. Balanceo Los árboles AA son una variación del árbol rojo-negro, que a su vez es una mejora del árbol binario de búsqueda. A diferencia de los árboles rojo-negro, los nodos rojos en un árbol AA sólo pueden añadirse como un hijo derecho. En un árbol AA, al cumplirse el estricto requisito de que sólo los enlaces derechos pueden ser rojos, sólo es necesario considerar dos formas de balanceo:
  • 5. Implementación Los árboles AA se implementan con la idea de un nivel en lugar de la de un color, a diferencia de los árboles rojo-negro. Cada nodo tiene un campo nivel y se deben cumplir las siguientes condiciones para que el árbol sea válido: El nivel de un nodo hoja es uno. El nivel de un hijo izquierdo es estrictamente menor que el de su padre. El nivel de un hijo derecho es menor o igual que el de su padre. El nivel de un nieto derecho es estrictamente menor que el de su abuelo. Cada nodo de nivel mayor que uno debe tener dos hijos.
  • 6. Operaciones de Equilibrio Se necesitan dos operaciones para mantener el equilibrio en un árbol AA. Estas operaciones se llaman torsión (skew) y división (split). La torsión es una rotación derecha que se realiza cuando una inserción o un borrado genera un enlace horizontal izquierdo, puede pensarse como un enlace rojo izquierdo en el contexto del árbol rojo-negro. La división es una rotación izquierda condicional que tiene lugar cuando una inserción o un borrado crea dos enlaces horizontales derechos, lo que de nuevo se corresponde con dos enlaces rojos consecutivos en el contexto de los árboles rojo-negro. Split Skew
  • 7.  El nivel de un hijo izquierdo debe ser menor que el nivel de su padre. El nivel de un hijo derecho debe ser menor o igual al nivel de su padre. El nivel de un nieto derecho debe ser menor que el nivel de su abuelo. Las hojas son de nivel 1. Los nodos que no son hojas deben tener dos hijos.