Organización de Datos – Curso Servetto

Anuncio
Organización de Datos – Curso Servetto
Organizaciones Balanceadas
1.
2.
Sea un Árbol B con capacidad para 3 claves en nodos internos y para 5 en nodos hoja, y con claves automáticas.
a. Muestre el estado del árbol tras cargarlo con las claves 1 a 23.
b.
Muestre el estado del árbol tras cargar la clave 24.
c.
Indique en qué otra situación se utiliza la primitiva de alta de carga.
Sea un árbol B con capacidad para 3 elementos en nodos internos y 5 en nodos hojas, con el siguiente estado inicial:
0: 1( 464) 3( 527) 2( 666) 4
1: ( 63)( 269)( 354)
3.
3: ( 467)( 500)
2: ( 532)( 542)( 550)( 559)( 651)
4: ( 734)( 863)( 979)
a.
Indicar qué nodos se leen o escriben y mostrar los estados sucesivos para las siguientes operaciones:
alta 600, baja 651, baja 734.
b.
Mostrar el estado de un árbol B+ con capacidad para 3 elementos en nodos internos y 4 en hojas producto de convertir
el árbol B inicial, y con carga al 75%.
Dado el siguiente árbol con capacidad para 3 elementos en nodos internos, y 5 en hojas:
0: 1( 583) 3( 790) 2
1: ( 59)( 166)( 204)( 500)( 525)
4.
3: ( 596)( 711)
2: ( 858)( 862)( 882)( 899)
a.
Grafique los estados sucesivos al efectuar las siguientes operaciones, e indique los nodos leídos y escritos para cada
una: baja 583, alta 300, baja 500.
b.
Suponiendo que las claves del árbol representan registros de datos de 297 bytes, calcule las capacidades mínimas y
máximas de nodos internos y hoja en términos de cantidades de registros, para implementarlo con nodos de 4 Kb.
Dada la siguiente definición
Persona((dni)i, apellido, nombres, fNac)
a. Defina en C estructuras y firmas de funciones para todas las primitivas de organización comentando sus objetivos
b.
5.
Defina clases en C++ para organizar este archivo
Dado el árbol B+ con el estado inicial que se muestra abajo, con capacidad para 3 registros en nodos internos y para 4 en
hojas:
a. Grafique los estados sucesivos resultantes de las operaciones: baja 27, baja 421, alta 700 y alta 800.
b.
Indique los nodos que se deben leer para la búsqueda de 725 en el árbol final e indique el resultado.
c.
Asumiendo que las claves ocupan 4 bytes y representan registros que ocupan 237 bytes, que los números de nodos
ocupan 1 byte, y que los nodos tienen un campo de control de un byte para indicar si son de índice o de secuencia y
otro campo de un byte para indicar cuántos elementos tiene, calcular las capacidades de nodos de 2048 bytes.
0: 7 ( 573) 6
7: 2 ( 176) 8 6: 1 ( 658) 9( 900) 4
2: ( 3)( 27) 8
6.
9: ( 658)( 724)( 797) 4
4: ( 900)( 965)( 969) 0
Explique la diferencia entre las primitivas de baja de ambos árboles.
Análisis comparativo de organizaciones balanceadas:
a. Indique las diferencias en la primitiva de alta de registros entre organizaciones B y B*.
b.
8.
1: ( 573)( 592)( 619) 9
Suponga que un árbol B tiene h niveles (para llegar a una hoja se debe leer h-1 nodos, ya que la raíz se supone está siempre
en RAM), y que otro árbol B* con carga mínima 2/3 tiene h* niveles.
a. Indique para cada árbol la cantidad de lecturas y escrituras necesarias para resolver un alta tanto en el mejor (sin ningún
sobreflujo) como en el peor (con sobreflujo en todos los niveles) de los casos posibles. Exprese las fórmulas en términos
de h y de h* y justifíquelas.
b.
7.
8: ( 350)( 421)( 428) 1
Indique las diferencias en la primitiva de baja de registros entre organizaciones B y B+.
Dado el archivo B+ con nodos de secuencia con capacidad 4 y nodos índice con capacidad 3 con el siguiente estado inicial:
0: 2( 275) 4( 418) 3( 563) 1
2: ( 21)( 59)( 120)( 150) 4
9.
4: ( 300)( 313) 3
3: ( 418)( 547) 1
1: ( 563)( 716) 0
a.
Grafique el estado posterior e informe el costo en lecturas y escrituras de cada operación, realizada en el siguiente
orden: alta 200, baja 418, baja 300.
b.
Recalcule las capacidades de los nodos del archivo considerando que los registros son de 143 bytes, las referencias a
nodos y el indicador de contenido de 2 bytes, el indicador de nivel de 1 byte y que el tamaño de los nodos es de 2 Kb.
Se desea organizar registros de datos de longitud fija de 244 bytes e identificadores de 4 bytes en un árbol B# con nodos de
4 Kb. Defina lógicamente cada tipo de nodo para direcciones de nodos de 2 bytes y calcule sus capacidades mínimas y
máximas en términos de cantidades de elementos.
Descargar