Universidad Diego PortalesFacultad de Ingenier´ıaEscuela de Inform´aticaCurso: Estructura de DatosAyudante: Jaime Guzm´an
Simulacro Solemne II Estructuras de datos
Duracin:
90 minutos.1. [
Pregunta 1
]El esquema de
hashing compuesto
consiste en usar una tabla de
hash
primaria de tama˜no
N
, dondecada posici´on de la tabla contiene otra tabla de
hash
de tama˜no
M
. De esta forma se tiene unatabla primaria, y a lo m´as
N
tablas secundarias.El esquema utiliza dos funciones de
hash
,
h
1
y
h
2
. Para almacenar un elemento, se calcula laposici´on usando
h
1
, y luego, dentro de la tabla secundaria que se encuentra en esa posici´on, seaplica la funci´on
h
2
, y se almacena el valor en esa posici´on. Si dentro de esta tabla secundaria seproduce una colisi´on, entonces se resuelve por encadenamiento.Considerando
N
= 7,
M
= 10,
h
1
(
x
) =
x
+ 5 mod
N
, y
h
2
(
x
) = (3
x
+ 2) mod
M
, inserte los sigu-ientes valores en una tabla de este tipo, y muestre el estado final de la tabla.
40
,
30
,
35
,
4
,
2
,
82
,
63
,
9
,
7
.
Solucion
En este esquema la tabla de
hash
primaria tiene tama˜no
N
= 7, y cada tabla secundaria contieneuna tabla de tama˜no
M
= 10. Para saber en qu´e posiciones de cada tabla se debe ingresar el dato,se necesita calcular
h
1
y
h
2
para todos los valores de
x
:
x h
1
(
x
)
h
2
(
x
)40 3 230 0 235 5 74 2 42 0 882 3 863 5 19 0 97 5 3De esta manera la tabla de
hash
construida queda de la manera que se muestra en la figura 1.2. [
Pregunta 2
]
a)
Considere un
heap
que contiene ms de 3 elementos. El valor m´as alto contenido en el
heap
siempre
se encuentra en la posici´on 0. En qu´e posiciones se puede encontrar el segundo valor m´asalto?, En qu´e posiciones puede encontrarse el tercer valor m´as alto?
Solucion
El segundo valor m´as alto en un
heap
tiene exactamente un valor mayor que ´el, por lo tanto tieneque ser un hijo directo de la ra´ız del
heap
. Puede ser el hijo izquierdo o el hijo derecho, por lo tantopuede estar en las posiciones 1 ´o 2.1
Add a Comment