2022-04-25
<aside>
馃挕 Tablas de hash como generalizaci贸n del concepto de arreglo
- Podemos indexar a partir de claves que no son s贸lo necesariamente enteros positivos
- Acceso en $O(1)$
</aside>
Motivaci贸n
Queremos una forma de representar un diccionario que nos permita
- Indexar con otros tipos de datos
- $n = \#$claves efectivamente usadas
- Tiempo de acceso $O(1)$
Pre-hashing
Funci贸n de correspondencia entre cualquier tipo de datos y un entero. Nos va a ayudar a indexar otros tipos de datos.
Tabla de hash
Representaremos un diccionario con una tupla $<T, h>$ donde:
- $T$ es una arreglo de tama帽o $n$
- $h$ es una funci贸n de hash $h: K \to \{0,...,n - 1\}$ donde
- $K$ es el conjunto de claves posibles
- $\{0,...,n - 1\}$ son las posiciones de la tabla (pseudoclaves)
- La posici贸n del elemento en el arreglo se calcula a trav茅s de la funci贸n $h$.