html5-img
1 / 29

Arboles MultiCaminos

Arboles MultiCaminos. Ana Lilia Laureano Cruces UAM-A. Caracteristicas y propiedades de los árboles. Todo árbol que no es vacío, tiene un único nodo raíz Un nodo X es descendiente directo de un nodo Y , si el nodo X , es apuntado por el nodo Y . X es hijo de Y .

azuka
Download Presentation

Arboles MultiCaminos

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Arboles MultiCaminos Ana Lilia Laureano Cruces UAM-A

  2. Caracteristicas y propiedades de los árboles • Todo árbol que no es vacío, tiene un único nodo raíz • Un nodo X es descendiente directo de un nodo Y, si el nodo X, es apuntado por el nodo Y. X es hijo de Y. • Un nodo X es antecesor directo de un nodo Y, si el nodo X apunta al nodo Y. X es padre de Y.

  3. Todos los nodos descendientes directos de un nodo (padre) son hermanos. • Todo nodo sin ramificaciones se le conoce como terminal u hoja. • Todo nodo que no cumple la característica anterior se le conoce como interior. • Grado es el número de descendientes directos de un determinado nodo. Grado del árbol es máximo grado de todos los nodos del árbol.

  4. Nivel es el número de arcos que deben ser reconocidos para llegar a un determinado nodo. Por definición la raíz tiene nivel I. • Altura del árbol es el máximo número de niveles de todos los nodos del árbol

  5. Las variantes de árboles binarios fueron desarrollados para funcionar en: • Memoria principal • Volumen de información: • Necesario almacenarlos en memoria secundaria • Organizados en archivo

  6. Tiempo de acceso de memoria principal es de microsegundos • Tiempo de acceso a memoria secundaria para accesar una página (contiene varios registros) es de milisegundos.

  7. Ejemplo; alamacenar un árbol binario en disco • El tiempo promedio para localizar alguno de los nodos es de logd n accesos a disco, donde: • n: número de nodos del árbol • d: el orden del mismo = 2. • Si el árbol contiene 1,000,000 de elementos. Se necesitarían aproximadamente 20 accesos a disco.

  8. En el caso de que el árbol este organizado en páginas, donde: • Cada página contiene 100 elementos como mínimo. • Se necesitan como máximo 3 accesos a disco. (Log 100 1,000,000). • Los accesos disminuyen de forma considerable.

  9. Arboles - B • Son una generalización de los árboles balanceados • Representan una búsqueda externa, utilizando árboles multicaminos. • Bayer y McCreight en 1970.

  10. Descripción • Cada nodo (página) de orden d: • Contiene 2d claves como máximoy • d claves como mínimo • Con la anterior descripción se garantiza que cada página este llena como mínimo hasta la mitad.

  11. Arbol -B de orden 2 • Respecto al número de descendientes cada página de un árbol -B de orden d tiene 2d+1 hijos como máximo y d+1 hijos como mínimo.

  12. Excepto la página raiz que puede tener como mínimo 1 clave y por consiguiente solamente 2 hijos. • Las páginas son páginas en general son almacenadas en dispositivos de almacenamiento secundario, a excepción de la página raíz a quien conviene tenerla en memoria principal

  13. Arbol -B de orden d • Con d claves y d+1 hijos ………. C1 C2 C3 C3 C4 Cn Cd

  14. Definición de un Arbol -B • Cada página excepto la raíz, contiene entre d y 2d elementos (d es el grado del árbol). • Cada página, excepto la página raíz y las páginas hoja, tiene entre d+1 y 2d+1 descendientes. • Se utiliza m para expresar el número de elementos por página. • La página raíz cuenta con al menos 2 descendientes. • Las páginas hojas están todas al mismo nivel.

  15. 66 29 55 75 87 94 15 19 22 26 35 41 58 62 69 73 77 81 89 93 96 98 99 Orden del árbol: 2 Altura del árbol: 3 Todas las páginas contienen: 2(d),3(d+1) o 4(2d+1) elementos; excepto la raíz (1) Los elementos dentro del árbol se encuentran ordenadosen forma creciente (izq. a der.) Todas las hojas están al mismo nivel

  16. Inserción en un Arbol-B • Todas las hojas están al mismo nivel • Cualquier camino desde la raíz hasta a alguna de las hojas tiene la misma longitud. • Crecen de abajo hacia arriba (desde las hojas hacia la raíz).

  17. Busqueda en árboles -B • 1. Debe tenerse en memoria la página sobre la cual vamos a trabajar. • SI pag ≠ NIL • ENTONCES • Se avanza hacia el paso 2 • SI_NO • Se avanza hacia el paso 3 • FIN_SI

  18. 2. Debe verificarse si la clave buscada se encuentra en dicha página. Si m es pequeña se utiliza búsqueda secuencial, de otra forma se puede utilizar búsqueda binaria. • SI la clave Se encuentra en la Pag. ENTONCES • exito = true • SI_NO • Deben distinguirse los siguientes casos * • FIN_SI

  19. Casos * • CASO (x) • < CL1: • Debe localizarse Pag. 0 • CLi< AND > CLm: • Debe localizarse Pag. i • > CLm: • Debe localizarse Pag. m • FIN_CASO • Regresar al paso 1

  20. 3. FRACASO, la página que se desea localizar es igual a NIL y por lo tanto la clave no se encuentra en el árbol.

  21. Arboles B + • Se han convertido en la técnica más utilizada para la organización de archivos indizados. La principal característica de estos árboes es que todas las claves se encuentran en las hojas y por lo tanto cualquier camino desde la raíz hasta alguna de las claves tienen la misma longitud.

  22. Arbol B + de orden 2 • Respecto al número de descendientes cada página de un árbol -B de orden d tiene 2d+1 hijos como máximo y d+1 hijos como mínimo. 55 77 37 48 55 61 73 77 80 87 92

  23. Es de notar que los árboles B+ ocupan un poco más de espacio que los érboles -B, y esto ocurre al existir duplicidad en algunas claves. Sin embargo, esto es acpetable si el archivo se modifica frecuentemente, puesto que se evita la operación de reorganización del árbol que es tan costosa en los árboles -B.

  24. Definición del árbol B+ • Cada página excepto la raíz, contiene entre d y 2d elementos • Cada página excepto la raíz, contiene entre d+1 y 2d+1 descendientes. Se utiliza m para expresar el número de elementos pro página. • La página raíz al menos tiene dos elementos • Las páginas hojas están todas al mismo nivel • Todas las claves se encuentran en las páginas hojas • Las claves de las páginas raíz e interiores se utilzan como índices

  25. Búsqueda en árboles B+ • El proceso debe contemplar que al buscar una determinada clave la misma se encuentra en una página raíz o interior, en dicho caso no debe detenerse el proceso, sino que debe continuarse la búsqueda con la página apuntada por la rama derecha de dicha clave.

  26. Inserción en árboles B+ • La inserción es similar a la del árbol -B. La dificultad se encuentra cuando se desea insertar en una página llena (m = 2d). La página: • Se divide en dos, distribuyendose las m+1 claves de la siguiente forma: • Las d primeras claves en la página de la izq. • Las d+1 en la página de la der. • Una copia de la clave del medio sube a la página antecesora

  27. 15 25 10 13 15 17 21 25 27 29 31 Ejemplo… 25 10 15 17 21 25 27 29 31

  28. Importante notar que el desbordamiento en una página que no es hoja no produce duplicidad de claves. El proceso de propagación puede llegar hasta la raíz, en cuyo caso la altura del árbol puede incrementarse en una unidad.

  29. Fin…

More Related