Documente Academic
Documente Profesional
Documente Cultură
Arboles B
ESTRUCTURAS DE DATOS
Profesor: Sal Torres de la O
Alumno: Christopher Castro
ARBOLES B
Introduccin
Ventajas:
Sabemos que la principal desventaja en archivos secuenciales indexados
es que al crecer el archivo, baja la performance por lo cual es necesario
reorganizar el archivo. Se hace necesaria una estructura de acceso que
me permita:
acceder a un registro con una clave determinada en un tiempo
acotado.
recorrer secuencialmente un conjunto de datos entre dos valores de
clave dados sin necesidad de consultar todo el archivo fsico.
Generalizando el concepto de rbol binario de bsqueda (que requera
como valor ptimo log2 (m+1) accesos para una bsqueda) podemos
pasar a un rbol n-ario de manera de en cada paso de una bsqueda
dividir en hasta n veces el conjunto de claves por consultar, si es que el
rbol esta lleno. De esta forma se asegura un nmero mximo de accesos
de logn (m+1). Hasta el momento no consideramos las estructuras de
rboles n-arios como ptimos para estructuras de bsquedas en
memoria, debido a que de n nodos se desperdiciaban una elevada
cantidad de campos de las celdas. Pero lo que ahora estamos
| Arboles B
Definicin:
La formulacin inicial de la estructura fue propuesta por Bayer y
McCreight en 1972, y fue adaptada por Knuth en 1973. Esta ltima es la
definicin ms corriente, que damos a continuacin:
Sea T un rbol-B de orden r y raz t entonces satisface las siguientes
propiedades:
Cada nodo en el rbol tiene a lo sumo r hijos:
Cada nodo, a excepcin de la raz y de las hojas (los maximales)
tiene al menos r/2 hijos.
El nodo raz tiene al menos 2 hijos, a no ser que la raz sea tambin
una hoja.
Esta frmula viene dada por el hecho de que cada nodo no raz
tiene al menos
| Arboles B
Ejemplo 1
El peor caso es que el efecto se propague por toda la rama de nodos hasta la raz, y haya que
particionar la raz y crear una nueva raz, aumentando la profundidad del rbol B.
Es conveniente minimizar la probabilidad de ocurrencia de splits en un rbol B. Para ello se utiliza el
Load Factor en la Carga Inicial del rbol B.
Arboles B |
Ejemplo 2
Cuando el rbol B se representa un ndice asociado a una tabla que sea de Consulta, con
pocas actualizaciones, o que sea histrica. En dicho caso conviene que el ndice sea lo
ms compacto posible.
Cuando las claves del ndice son una secuencia incremental o decremental, eso significa
que el rbol B siempre va crecer en una direccin, por lo tanto no tiene sentido dejar
huecos en nodos medios.
| Arboles B
Cuando el rbol B se representa un ndice asociado a una tabla que sea de mucha
actualizacin (inserts, updates o deletes) en forma online.
Arboles B |
Procedimiento
| Arboles B
Ejemplo de ejecucin
Arboles B |
Los arboles B tienen muchas ventajas frente a los otros tipos de estructuras de
datos ya que por ejemplo tienen una bsqueda muy rpida al ser balanceados y
adems tener claves que refieren a los datos, as mismo que sabemos que toda la
informacin se encuentra alojada al ltimo nivel sin embargo tienen algunas
desventajas ya que el algoritmo de insercin se complica al realizar las
particiones.