SlideShare ist ein Scribd-Unternehmen logo
1 von 12
República Bolivariana de Venezuela
        Ministerio Popular de Educación Superior
                Universidad Fermín Toro
               Sede Cabudare – Edo. Lara
                 Decanato de Ingeniería



                 MAPA CONCEPTUAL
“TECNICAS DE ROTACION EN ARBOLES BALANCEADOS”
                   Análisis de Algoritmo




                                             Realizado por:
                                             T.S.U Rosa Pérez
                                             T.S.U Wilmer León
                                             Prof. Ing. Diosmary Marrón
                 Barquisimeto, Enero 2013.
Se considera que un
                                                           árbol binario está balanceado cuando todos sus
                                                           niveles, excepto el último, están integrados a la
            La más común y usada de las técnicas son los             máxima capacidad de nodos
        ARBOLES AVL
                                                                 ÁRBOL BINARIO DE BÚSQUEDA
          que es un
                                            en donde un
    Árbol binario de búsqueda
     al que se le añade una                                            cada nodo cumple con que todos los
      condición de equilibrio                                           nodos de su subárbol izquierdo son
                                               entre sus operaciones           menores que la raíz
                                                       están
                         su denominación por                                          y
                             los creadores
   asociado a un                                                             todos los nodos del subárbol
                             (Adelson-Velskii y                            derecho son mayores que la raíz.

     FACTOR DE                    Landis).      Insertar
      BALANCE                   en donde                    Balancear
                                                                 Caso 1 Rotación simple izquierda RSI
    El cual es
                               para todo nodo la                 Caso 2 Rotación simple derecha RSD
La altura del subárbol            altura de sus                  Caso 3 Rotación doble izquierda RDI
derecho menos altura         subárboles izquierdo                Caso 4 Rotación doble derecha RDD
del subárbol izquierdo        y derecho pueden              Eliminar
para ese nodo                diferir a lo sumo en 1         Calcular Altura
ROTACION                          ROTACION
 SIMPLE A LA                       DOBLE A LA
DERECHA RSD                      IZQUIERDA RDI




            ROTACION       ROTACION
           SIMPLE A LA    DOBLE A LA
         IZQUIERDA RSI   DERECHA RDD
1. Pasamos el subárbol derecho del nodo Q como subárbol
   izquierdo de P. Esto mantiene el árbol como ABB, ya que
   todos los valores a la derecha de Q siguen estando a la               ROTACION
   izquierda de P.                                                      SIMPLE A LA
2. El árbol P pasa a ser el subárbol derecho del nodo Q.               DERECHA RSD
3. Ahora, el nodo Q pasa a tomar la posición del nodo P, es
   decir, hacemos que la entrada al árbol sea el nodo Q, en
   lugar del nodo P. Previamente, P puede que fuese un        se usará cuando el
   árbol completo o un subárbol de otro nodo de menor
   altura.
                                                                    subárbol    izquierdo
                                                                    de un nodo sea 2
                                                                    unidades más alto
                                                                    que el derecho, Y
                                                                    además, la raíz del
                                                                    subárbol    izquierdo
                                                                    esté cargado a la
                                                                    izquierda           o
                                                                    equilibrado
ARBOL RESULTANTE
                               EQUILIBRADO



Se puede ver que tanto P como Q quedan
equilibrados en cuanto altura. En el caso de P porque
sus dos subárboles tienen la misma altura (n), en el
caso de Q, porque su subárbol izquierdo A tiene una
altura (n+1) y su subárbol derecho también, ya que a
P se añade la altura de cualquiera de sus subárboles.
1. Pasamos el subárbol izquierdo del nodo Q como subárbol
                                  derecho de P. Esto mantiene el árbol como ABB, ya que
                                  todos los valores a la izquierda de Q siguen estando a la
     ROTACION                     derecha de P.
    SIMPLE A LA                2. El árbol P pasa a ser el subárbol izquierdo del nodo Q.
  IZQUIERDA RSI                3. Ahora, el nodo Q pasa a tomar la posición del nodo P, es
                                  decir, hacemos que la entrada al árbol sea el nodo Q, en
                                  lugar del nodo P. Previamente, P puede que fuese un
          se usará cuando el      árbol completo o un subárbol de otro nodo de menor
                                  altura.
subárbol derecho de
un    nodo     sea  2
unidades más alto que
el     izquierdo.   Y
además, la raíz del
subárbol derecho esté
cargado a la derecha
o esté equilibrado
ARBOL RESULTANTE
  EQUILIBRADO


     Se puede ver que tanto P como Q quedan
     equilibrados en cuanto altura. En el caso de P
     porque sus dos subárboles tienen la misma
     altura (n), en el caso de Q, porque su
     subárbol izquierdo A tiene una altura (n+1) y
     su subárbol derecho también, ya que a P se
     añade la altura de cualquiera de sus
     subárboles.
1. Pasamos el subárbol izquierdo del nodo R como
   subárbol derecho de Q. Esto mantiene el árbol como          ROTACION
   ABB, ya que todos los valores a la izquierda de R          DOBLE A LA
   siguen estando a la derecha de Q.                         DERECHA RDD
2. Ahora, el nodo R pasa a tomar la posición del nodo
   Q, es decir, hacemos que la raíz del subárbol
   izquierdo de P sea el nodo R en lugar de Q.               se usará cuando el
3. El árbol Q pasa a ser el subárbol izquierdo del nodo R.
                                                               subárbol izquierdo
                                                               de un nodo sea 2
                                                               unidades más alto
                                                               que el derecho. Y
                                                               además, la raíz
                                                               del       subárbol
                                                               izquierdo     esté
                                                               cargado     a    la
                                                               derecha.
4. Pasamos el subárbol derecho del nodo R como subárbol
   izquierdo de P. Esto mantiene el árbol como ABB, ya que      ROTACION
   todos los valores a la derecha de R siguen estando a la     DOBLE A LA
   izquierda de P.                                            DERECHA RDD
5. Ahora, el nodo R pasa a tomar la posición del nodo P, es
   decir, hacemos que la entrada al árbol sea el nodo R, en
   lugar del nodo P. Como en los casos anteriores,
   previamente, P puede que fuese un árbol completo o un
   subárbol de otro nodo de menor altura.
6. El árbol P pasa a ser el subárbol derecho del nodo R.
1. Pasamos el subárbol derecho del nodo R como
                             subárbol izquierdo de Q. Esto mantiene el árbol como
                             ABB, ya que todos los valores a la derecha de R
   ROTACION
                             siguen estando a la izquierda de Q.
  COMPUESTA A
                          2. Ahora, el nodo R pasa a tomar la posición del nodo
  LA IZQUIERDA
                             Q, es decir, hacemos que la raíz del subárbol derecho
       RCI
                             de P sea el nodo R en lugar de Q.
                          3. El árbol Q pasa a ser el subárbol derecho del nodo R.
se usará cuando el



subárbol derecho de un
nodo sea 2 unidades
más      alto  que   el
izquierdo. Y además, la
raíz     del   subárbol
derecho esté cargado a
la izquierda.
4. Pasamos el subárbol izquierdo del nodo R como subárbol
                  derecho de P. Esto mantiene el árbol como ABB, ya que
 ROTACION         todos los valores a la izquierda de R siguen estando a la
COMPUESTA A       derecha de P.
LA IZQUIERDA   5. Ahora, el nodo R pasa a tomar la posición del nodo P, es
     RCI          decir, hacemos que la entrada al árbol sea el nodo R, en
                  lugar del nodo P. Como en los casos anteriores,
                  previamente, P puede que fuese un árbol completo o un
                  subárbol de otro nodo de menor altura.
               6. El árbol P pasa a ser el subárbol izquierdo del nodo R
Rotación simple izquierda(-izquierda)   ARBOLES AVL      Rotación compuesta: derecha-izquierda
            1- Situación inicial:                           1.- Situación inicial
                                             Ejemplos




2- Inserción de un nuevo nodo y calculo
                                                         2.- Inserción de un nuevo nodo y calculo
de las nuevas condiciones de equilibrio
                                                         de las nuevas condiciones de equilibrio




                                                                3.-Situación final.
  3- Rotación Izquierda de p para
  recuperar condición de árbol AVL

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (20)

Colas
ColasColas
Colas
 
Guia normalización
Guia normalizaciónGuia normalización
Guia normalización
 
Pila estructura de datos
Pila estructura de datosPila estructura de datos
Pila estructura de datos
 
Active directory
Active directoryActive directory
Active directory
 
Arboles binarios
Arboles binariosArboles binarios
Arboles binarios
 
Programación 3: árboles de búsqueda equilibrados
Programación 3: árboles de búsqueda equilibradosProgramación 3: árboles de búsqueda equilibrados
Programación 3: árboles de búsqueda equilibrados
 
Diapositiva de prueba
Diapositiva de pruebaDiapositiva de prueba
Diapositiva de prueba
 
ARBOLES BINARIOS
ARBOLES BINARIOSARBOLES BINARIOS
ARBOLES BINARIOS
 
Indices tipo arbol b+
Indices tipo arbol b+Indices tipo arbol b+
Indices tipo arbol b+
 
Algebra relacional
Algebra relacionalAlgebra relacional
Algebra relacional
 
Indexación de archivos simple
Indexación de archivos simpleIndexación de archivos simple
Indexación de archivos simple
 
ED Unidad 4: Estructuras de datos no lineales (árboles)
ED Unidad 4: Estructuras de datos no lineales (árboles)ED Unidad 4: Estructuras de datos no lineales (árboles)
ED Unidad 4: Estructuras de datos no lineales (árboles)
 
Archivo secuencial-indexado
Archivo secuencial-indexadoArchivo secuencial-indexado
Archivo secuencial-indexado
 
Archivos Secuenciales Indexados
Archivos Secuenciales IndexadosArchivos Secuenciales Indexados
Archivos Secuenciales Indexados
 
Notación infija postfija
Notación infija postfijaNotación infija postfija
Notación infija postfija
 
FUNCIONES DE UN DBA
FUNCIONES DE UN DBAFUNCIONES DE UN DBA
FUNCIONES DE UN DBA
 
Estructura de Datos - Estructuras no lineales
Estructura de Datos - Estructuras no linealesEstructura de Datos - Estructuras no lineales
Estructura de Datos - Estructuras no lineales
 
Listas Doblemente Enlazadas y Listas Circulares
Listas Doblemente Enlazadas y Listas CircularesListas Doblemente Enlazadas y Listas Circulares
Listas Doblemente Enlazadas y Listas Circulares
 
Modelo Relacional
Modelo RelacionalModelo Relacional
Modelo Relacional
 
Listas de adyacencia
Listas de adyacenciaListas de adyacencia
Listas de adyacencia
 

Kürzlich hochgeladen

pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.FlorenciaCattelani
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...JohnRamos830530
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxJorgeParada26
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxAlan779941
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxMiguelAtencio10
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21mariacbr99
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfAnnimoUno1
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfvladimiroflores1
 

Kürzlich hochgeladen (11)

pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 

Tecnicas de rotacion en arboles balanceados

  • 1. República Bolivariana de Venezuela Ministerio Popular de Educación Superior Universidad Fermín Toro Sede Cabudare – Edo. Lara Decanato de Ingeniería MAPA CONCEPTUAL “TECNICAS DE ROTACION EN ARBOLES BALANCEADOS” Análisis de Algoritmo Realizado por: T.S.U Rosa Pérez T.S.U Wilmer León Prof. Ing. Diosmary Marrón Barquisimeto, Enero 2013.
  • 2. Se considera que un árbol binario está balanceado cuando todos sus niveles, excepto el último, están integrados a la La más común y usada de las técnicas son los máxima capacidad de nodos ARBOLES AVL ÁRBOL BINARIO DE BÚSQUEDA que es un en donde un Árbol binario de búsqueda al que se le añade una cada nodo cumple con que todos los condición de equilibrio nodos de su subárbol izquierdo son entre sus operaciones menores que la raíz están su denominación por y los creadores asociado a un todos los nodos del subárbol (Adelson-Velskii y derecho son mayores que la raíz. FACTOR DE Landis). Insertar BALANCE en donde Balancear Caso 1 Rotación simple izquierda RSI El cual es para todo nodo la Caso 2 Rotación simple derecha RSD La altura del subárbol altura de sus Caso 3 Rotación doble izquierda RDI derecho menos altura subárboles izquierdo Caso 4 Rotación doble derecha RDD del subárbol izquierdo y derecho pueden Eliminar para ese nodo diferir a lo sumo en 1 Calcular Altura
  • 3. ROTACION ROTACION SIMPLE A LA DOBLE A LA DERECHA RSD IZQUIERDA RDI ROTACION ROTACION SIMPLE A LA DOBLE A LA IZQUIERDA RSI DERECHA RDD
  • 4. 1. Pasamos el subárbol derecho del nodo Q como subárbol izquierdo de P. Esto mantiene el árbol como ABB, ya que todos los valores a la derecha de Q siguen estando a la ROTACION izquierda de P. SIMPLE A LA 2. El árbol P pasa a ser el subárbol derecho del nodo Q. DERECHA RSD 3. Ahora, el nodo Q pasa a tomar la posición del nodo P, es decir, hacemos que la entrada al árbol sea el nodo Q, en lugar del nodo P. Previamente, P puede que fuese un se usará cuando el árbol completo o un subárbol de otro nodo de menor altura. subárbol izquierdo de un nodo sea 2 unidades más alto que el derecho, Y además, la raíz del subárbol izquierdo esté cargado a la izquierda o equilibrado
  • 5. ARBOL RESULTANTE EQUILIBRADO Se puede ver que tanto P como Q quedan equilibrados en cuanto altura. En el caso de P porque sus dos subárboles tienen la misma altura (n), en el caso de Q, porque su subárbol izquierdo A tiene una altura (n+1) y su subárbol derecho también, ya que a P se añade la altura de cualquiera de sus subárboles.
  • 6. 1. Pasamos el subárbol izquierdo del nodo Q como subárbol derecho de P. Esto mantiene el árbol como ABB, ya que todos los valores a la izquierda de Q siguen estando a la ROTACION derecha de P. SIMPLE A LA 2. El árbol P pasa a ser el subárbol izquierdo del nodo Q. IZQUIERDA RSI 3. Ahora, el nodo Q pasa a tomar la posición del nodo P, es decir, hacemos que la entrada al árbol sea el nodo Q, en lugar del nodo P. Previamente, P puede que fuese un se usará cuando el árbol completo o un subárbol de otro nodo de menor altura. subárbol derecho de un nodo sea 2 unidades más alto que el izquierdo. Y además, la raíz del subárbol derecho esté cargado a la derecha o esté equilibrado
  • 7. ARBOL RESULTANTE EQUILIBRADO Se puede ver que tanto P como Q quedan equilibrados en cuanto altura. En el caso de P porque sus dos subárboles tienen la misma altura (n), en el caso de Q, porque su subárbol izquierdo A tiene una altura (n+1) y su subárbol derecho también, ya que a P se añade la altura de cualquiera de sus subárboles.
  • 8. 1. Pasamos el subárbol izquierdo del nodo R como subárbol derecho de Q. Esto mantiene el árbol como ROTACION ABB, ya que todos los valores a la izquierda de R DOBLE A LA siguen estando a la derecha de Q. DERECHA RDD 2. Ahora, el nodo R pasa a tomar la posición del nodo Q, es decir, hacemos que la raíz del subárbol izquierdo de P sea el nodo R en lugar de Q. se usará cuando el 3. El árbol Q pasa a ser el subárbol izquierdo del nodo R. subárbol izquierdo de un nodo sea 2 unidades más alto que el derecho. Y además, la raíz del subárbol izquierdo esté cargado a la derecha.
  • 9. 4. Pasamos el subárbol derecho del nodo R como subárbol izquierdo de P. Esto mantiene el árbol como ABB, ya que ROTACION todos los valores a la derecha de R siguen estando a la DOBLE A LA izquierda de P. DERECHA RDD 5. Ahora, el nodo R pasa a tomar la posición del nodo P, es decir, hacemos que la entrada al árbol sea el nodo R, en lugar del nodo P. Como en los casos anteriores, previamente, P puede que fuese un árbol completo o un subárbol de otro nodo de menor altura. 6. El árbol P pasa a ser el subárbol derecho del nodo R.
  • 10. 1. Pasamos el subárbol derecho del nodo R como subárbol izquierdo de Q. Esto mantiene el árbol como ABB, ya que todos los valores a la derecha de R ROTACION siguen estando a la izquierda de Q. COMPUESTA A 2. Ahora, el nodo R pasa a tomar la posición del nodo LA IZQUIERDA Q, es decir, hacemos que la raíz del subárbol derecho RCI de P sea el nodo R en lugar de Q. 3. El árbol Q pasa a ser el subárbol derecho del nodo R. se usará cuando el subárbol derecho de un nodo sea 2 unidades más alto que el izquierdo. Y además, la raíz del subárbol derecho esté cargado a la izquierda.
  • 11. 4. Pasamos el subárbol izquierdo del nodo R como subárbol derecho de P. Esto mantiene el árbol como ABB, ya que ROTACION todos los valores a la izquierda de R siguen estando a la COMPUESTA A derecha de P. LA IZQUIERDA 5. Ahora, el nodo R pasa a tomar la posición del nodo P, es RCI decir, hacemos que la entrada al árbol sea el nodo R, en lugar del nodo P. Como en los casos anteriores, previamente, P puede que fuese un árbol completo o un subárbol de otro nodo de menor altura. 6. El árbol P pasa a ser el subárbol izquierdo del nodo R
  • 12. Rotación simple izquierda(-izquierda) ARBOLES AVL Rotación compuesta: derecha-izquierda 1- Situación inicial: 1.- Situación inicial Ejemplos 2- Inserción de un nuevo nodo y calculo 2.- Inserción de un nuevo nodo y calculo de las nuevas condiciones de equilibrio de las nuevas condiciones de equilibrio 3.-Situación final. 3- Rotación Izquierda de p para recuperar condición de árbol AVL