Software Engineering">
Preguntas Hashing ED 2021 I Jcarvajalu
Preguntas Hashing ED 2021 I Jcarvajalu
Preguntas Hashing ED 2021 I Jcarvajalu
Una colisión ocurre cuando dos o más datos de entrada producen una misma salida al
operarlo en el hash, es decir, varios datos tienen el mismo valor hash. Matemáticamente,
se puede decir que un hash tendrá colisiones es una función no inyectiva.
En el hash abierto, los valores hash repetidos se almacenan en listas enlazadas adjuntas
a las celdas donde ocurren colisiones de una tabla hash.
En hash cerrado, todos los valores hash se almacenan en la propia tabla hash sin el uso
de listas enlazadas.
Esto se usa para el manejo de colisiones en un hash, aunque pueda aumentar el tiempo
amortizado de ciertas operaciones que involucren entrar a las listas enlazadas.
Map
Definition
Map from S to V is a data structure with methods HasKey(O), Get(O), Set(O, v),
where O ∈ S, v ∈ V .
Get(O) recupera el dato asociado a la llave o valor hash O del mismo. Esto se
hace aplicando la función hash y recuperando el valor que retorna para O.
d. ¿Cuál es el orden del tiempo de ejecución de cada uno de los tres métodos
HasKey, Get y Set?
Es de orden O(1), sin embargo cuando hay colisiones puede extenderse hasta
O(n).
La estructura de datos set es una estructura de datos tipo conjunto que permite
almacenar una colección de elementos no necesariamente ordenados de cualquier tipo
de dato, en esta estructura no pueden existir elementos repetidos.
11. Explique las dos formas de implementar la estructura de datos Set. Resalte las
diferencias entre estas dos formas de implementación.