Árbol B Estructura de Datos en memoria secundaria
Árboles B <ul><li>Bayer y McCreight propusieron en 1970 esta estructura. </li></ul><ul><li>Manejan árboles de búsqueda mul...
Características del Árbol B <ul><li>Un Árbol B de  orden n  es aquel que: </li></ul><ul><ul><li>Todas  las hojas del árbol...
Ejemplo.... <ul><li>Para un Árbol B de  orden 3 : </li></ul><ul><ul><li>Cuántos elementos máximo puede guardar cada nodo d...
Más características del Árbol B <ul><li>Un árbol B de  orden  n  es aquél en que: </li></ul><ul><ul><li>Los elementos de u...
Ejemplo... <ul><li>¿De qué orden es este árbol B? </li></ul>12 18 Este árbol es de orden 2 ya que puede almacenar hasta 4 ...
Proceso de Inserción <ul><li>Buscar el  nodo hoja en donde se debería agregar el elemento. </li></ul><ul><li>Si hay espaci...
Ejemplo.... 12 18 Agregar el 4 4 5 8  12 18 Si hay espacio para el elemento, éste se agrega en el nodo. Los elementos está...
Ejemplo... 12 18 Agregar el 56 10 20 65 4 5 8  12 18 25 56 92 99 Cuando el nuevo elemento no cabe en el nodo, se agrega ot...
Ejemplo... 10 20 65 4 5 8  12 18 25 56 70 75 80 85 Agregar el 78 10 20 70 4 5 8  12 18 25 56 65 75 78 80 85 El árbol siemp...
Proceso de Eliminación <ul><li>Buscar el elemento a borrar. </li></ul><ul><li>Si el elemento a borrar está en una nodo hoj...
Ejemplo... 10 20 65 4 5 8  12 18 25 56 70 75 80 85 Eliminar el 8 10 20 65 4 5 12 18 25 56 70 75 80 85 Cuando el nodo tiene...
Ejemplo... 10 20 70 4 5 8  12 18 25 65 75 80 85 Eliminar el 56 Cuando el nodo tiene el mínimo se toma un elemento de los h...
Ejemplo... Eliminar el 56 Cuando el nodo tiene el mínimo y los hermanos también, se une el nodo con uno de sus hermanos y ...
Árbol B+ Estructura de Datos en memoria secundaria
Los árboles-B+ se han convertido en la técnica mas utilizada para la organización de archivos indizados. La principal cara...
Inserción en arboles b+   El proceso de inserción en árboles-B+ es relativamente simple, similar al proceso de inserción e...
Borrado en arboles b+ La operación de borrado en árboles-B+ es mas simple que la operación de borrado en árboles-B. Esto o...
2. Si al eliminar una clave, m queda menor a d entonces debe realizarse una redistribución de claves, tanto en el índice c...
Creditos Realizador por: Francisco Barba Casado Antonio Gomez Ostos 1º ASIR-B Fuentes: Elprisma.com Uca (Univ.Cadiz)
Próxima SlideShare
Cargando en…5
×

Arbol b ASIRB

1.477 visualizaciones

Publicado el

Publicado en: Tecnología, Viajes, Empresariales
0 comentarios
0 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Sin descargas
Visualizaciones
Visualizaciones totales
1.477
En SlideShare
0
De insertados
0
Número de insertados
16
Acciones
Compartido
0
Descargas
40
Comentarios
0
Recomendaciones
0
Insertados 0
No insertados

No hay notas en la diapositiva.

Arbol b ASIRB

  1. 1. Árbol B Estructura de Datos en memoria secundaria
  2. 2. Árboles B <ul><li>Bayer y McCreight propusieron en 1970 esta estructura. </li></ul><ul><li>Manejan árboles de búsqueda multicamino, cuyos nodos guardan más de un elemento. </li></ul><ul><li>Son árboles 100% balanceados en su estructura , lo cual repercute en búsquedas eficientes y en accesos mínimos a disco. </li></ul>12 18 10 20 5 8 25 65 92 99
  3. 3. Características del Árbol B <ul><li>Un Árbol B de orden n es aquel que: </li></ul><ul><ul><li>Todas las hojas del árbol están en el nivel inferior. </li></ul></ul><ul><ul><li>Cada nodo contiene entre n y 2n elementos, excepto el nodo raíz, que puede tener entre 1 y 2n elementos. </li></ul></ul><ul><ul><li>Si un nodo tiene ‘ m ’ elementos, el nodo siempre contendrá m + 1 hijos si no es un nodo hoja. </li></ul></ul>
  4. 4. Ejemplo.... <ul><li>Para un Árbol B de orden 3 : </li></ul><ul><ul><li>Cuántos elementos máximo puede guardar cada nodo del árbol? </li></ul></ul><ul><ul><ul><li>6 </li></ul></ul></ul><ul><ul><li>¿Cuántos elementos mínimo puede guardar cada nodo del árbol? </li></ul></ul><ul><ul><ul><li>1 si el la raíz , 3 cualquier otro nodo . </li></ul></ul></ul><ul><ul><li>¿Cuántos hijos máximo puede tener un nodo? </li></ul></ul><ul><ul><ul><li>7 </li></ul></ul></ul><ul><ul><li>¿Cuántos hijos mínimo puede tener un nodo? </li></ul></ul><ul><ul><ul><li>0 si es hoja, 2 si es raíz, 4 cualquier otro nodo. </li></ul></ul></ul>
  5. 5. Más características del Árbol B <ul><li>Un árbol B de orden n es aquél en que: </li></ul><ul><ul><li>Los elementos de un nodo están ordenados linealmente. </li></ul></ul><ul><ul><li>Los elementos están organizados de tal forma que se cumple la regla de la búsqueda: a la izquierda menores, a la derecha mayores. </li></ul></ul>12 18 10 20 5 8 25 65 92 99
  6. 6. Ejemplo... <ul><li>¿De qué orden es este árbol B? </li></ul>12 18 Este árbol es de orden 2 ya que puede almacenar hasta 4 elementos en cada nodo. 10 20 5 8 25 65 92 99
  7. 7. Proceso de Inserción <ul><li>Buscar el nodo hoja en donde se debería agregar el elemento. </li></ul><ul><li>Si hay espacio disponible en el nodo, agregar el elemento y terminar. </li></ul><ul><li>Si el nodo hoja NO tiene capacidad de almacenar el elemento, se deberá crear un nuevo nodo al mismo nivel de la hoja y distribuir a los 2n+1 elementos de la siguiente forma: </li></ul><ul><ul><li>El nuevo nodo recibe a los ‘n’ elementos más grandes. </li></ul></ul><ul><ul><li>El nodo existente se queda con los ‘n’ elementos más pequeños. </li></ul></ul><ul><ul><li>El elemento medio se insertará en el nodo padre siguiendo la misma lógica de inserción. En caso de no haber nodo padre, se creará un nuevo nodo que pasará a ser la nueva raíz. </li></ul></ul>
  8. 8. Ejemplo.... 12 18 Agregar el 4 4 5 8 12 18 Si hay espacio para el elemento, éste se agrega en el nodo. Los elementos están acomodados de menor a mayor. 10 20 5 8 25 65 92 99 10 20 25 65 92 99
  9. 9. Ejemplo... 12 18 Agregar el 56 10 20 65 4 5 8 12 18 25 56 92 99 Cuando el nuevo elemento no cabe en el nodo, se agrega otro nodo y se reparten los elementos. 10 20 5 8 25 65 92 99
  10. 10. Ejemplo... 10 20 65 4 5 8 12 18 25 56 70 75 80 85 Agregar el 78 10 20 70 4 5 8 12 18 25 56 65 75 78 80 85 El árbol siempre se resiste a crecer, ya que trata de distribuir los elementos en los nodos ya existentes.
  11. 11. Proceso de Eliminación <ul><li>Buscar el elemento a borrar. </li></ul><ul><li>Si el elemento a borrar está en una nodo hoja, se borra y termina el proceso. </li></ul><ul><li>Si el elemento a borrar no se encuentra en una hoja, al igual que en un ABB, se buscará al sustituto más apropiado. El sustituto será: </li></ul><ul><ul><li>El último elemento de la hoja más derecha del subárbol izquierdo del nodo actual (el mayor de los menores). </li></ul></ul><ul><ul><li>El primer elemento de la hoja más izquierda del subárbol derecho del nodo actual (el menor de los mayores). </li></ul></ul>
  12. 12. Ejemplo... 10 20 65 4 5 8 12 18 25 56 70 75 80 85 Eliminar el 8 10 20 65 4 5 12 18 25 56 70 75 80 85 Cuando el nodo tiene más elementos que el mínimo, se da de baja al elemento y termina el proceso.
  13. 13. Ejemplo... 10 20 70 4 5 8 12 18 25 65 75 80 85 Eliminar el 56 Cuando el nodo tiene el mínimo se toma un elemento de los hermanos. 10 20 65 4 5 8 12 18 25 56 70 75 80 85
  14. 14. Ejemplo... Eliminar el 56 Cuando el nodo tiene el mínimo y los hermanos también, se une el nodo con uno de sus hermanos y le libera el nodo sobrante. 10 20 4 5 8 12 18 25 65 70 75 10 20 65 4 5 8 12 18 25 56 70 75
  15. 15. Árbol B+ Estructura de Datos en memoria secundaria
  16. 16. Los árboles-B+ se han convertido en la técnica mas utilizada para la organización de archivos indizados. La principal característica de estos arboles es que todas las claves se encuentran en las hojas Árbol b+ de orden 2 <ul><li>Formalmente se define un árbol-B+ de la siguiente manera: </li></ul><ul><li>Cada pagina, excepto la raíz, contiene entre d y 2d elementos. </li></ul><ul><li>Cada pagina, excepto la raíz, tiene entre d + 1 y 2d + 1 descendientes. Se utiliza m para expresar el numero de elementos por pagina. </li></ul><ul><li>La pagina raíz tiene al menos dos descendientes. </li></ul><ul><li>Las paginas hojas están todas al mismo nivel. </li></ul><ul><li>Todas las claves se encuentran en las paginas hojas. </li></ul><ul><li>Las claves de las paginas raíz e interiores se utilizan como índices. </li></ul><ul><li>Búsqueda De Arboles-B+ </li></ul>
  17. 17. Inserción en arboles b+ El proceso de inserción en árboles-B+ es relativamente simple, similar al proceso de inserción en árboles-B. La dificultad se presenta cuando desea insertarse una clave en una pagina que se encuentra llena ( m = 2d ). En este caso, la pagina afectada se divide en 2, distribuyéndose las m + 1 claves de la siguiente forma: &quot; las d primeras claves en la pagina de la izquierda y las d + 1 restantes claves en la pagina derecha &quot;. Una copia de la clave del medio sube a la pagina antecesora.
  18. 18. Borrado en arboles b+ La operación de borrado en árboles-B+ es mas simple que la operación de borrado en árboles-B. Esto ocurre porque las claves a eliminar siempre se encuentran en las paginas hojas. En general deben distinguirse los siguientes casos: 1. Si al eliminar una clave, m queda mayor o igual a d entonces termina la operación de borrado. Las claves de las paginas raíz o internas no se modifican por mas que sean una copia de la clave eliminada en las hojas . * Eliminación clave 25
  19. 19. 2. Si al eliminar una clave, m queda menor a d entonces debe realizarse una redistribución de claves, tanto en el índice como en las paginas hojas. * Eliminación clave 27
  20. 20. Creditos Realizador por: Francisco Barba Casado Antonio Gomez Ostos 1º ASIR-B Fuentes: Elprisma.com Uca (Univ.Cadiz)

×