PDA

View Full Version : [Strutture Dati] HashTable e Vettore Associativo


luxorl
28-02-2006, 11:32
Non ho ben chiara la differenza fra una tabella hash e un vettore associativo.
Una tabella hash č un array di indirizzi istanziato a priori, i quali sono collegati con (a secondo del fattore di carico) uno o pių elementi messi in Lista. Giusta come definizione?

Un Vettore associativo, invece, in cosa differisce? :confused:

tglman
28-02-2006, 12:18
quando si sviluppa un'hashtable di solito si crea un array statico di dimensione predefinita e gli elementi vengono posizionati su questo array a seconda di una funzione di hash.
es codice semplificato:

SIZE=100;
arr_dati[SIZE];
put(dato)
{
arr_dati[hash_fun(dato)%SIZE]=dato;
}


poi si varia la funzione di hash per distribuire meglio gli elementi.

un vettore associativo del nome direi che associ un elemento ad un indice, e quell'elemento a sempre quell'indice, comunque non so darti un definizione corretta.

Ciao