Usa una struttura dati semplice (es: array, matrici, ecc) $T$ e un insieme universo $U$, $|U|=u$.
Ogni posizione di $T$ è una chiave dell’universo $U$, ogni posizione ha poi $i$ puntatori ai vari elementi (o direttamente l’elemento).
Se per una chiave $k \in U$ non ci sono elementi: $T[k]=nil$.
Accesso, elimina e inserimento di un elemento in $O(1)$-time, data la chiave $k$, l’input $x$ e la posizione $k[x]$ (o la posizione è direttamente $x$)
Problemi:
Soluzione: hash tables
Se con l’accesso diretto l’elemento con chiave $k$ era memorizzato in posizione $k$, con l’hash è memorizzato in $h(k)$.
Definizione: Funzione di hash