Računalno programiranje je proces koji automatizira računalni softver. Većina računalnih programa pohranjuje digitalne podatke u datoteke. Hash tablica je posebna tablica sastavljena od parova vrijednosti ključeva, koja se generira iz razloga izvedbe. Ključ hashtable je metoda pristupa određenom dijelu informacija iz hashtable. Ključ je parametar pretraživanja koji se koristi za pristup određenoj vrijednosti iz podatkovne datoteke.
Obično je hashtable tablica puna parova vrijednosti ključeva. Ovom tehnikom svaka vrijednost ima odgovarajući ključ hashtable. Ova vrsta tablice može se koristiti u mnogim funkcionalnim područjima računalne obrade. Tablica se smatra strukturom podataka koja koristi hash funkciju za pristup ključu hashtable unutar tablice. Hash funkcija pretvara običan tekst podatke u hash ključeve, u svrhu pristupa podacima.
Kada se podaci pohranjuju u podatkovne datoteke, stvaraju se računalni programi za dohvaćanje podataka. Hash funkcije obično imaju brže algoritme pristupa od uobičajenih pretraživanja plana teksta. To je zato što je ključ hashtable binarni prikaz izvornih podataka, koji osigurava bolje indekse za pretraživanje.
Hashmap je nesinkronizirana verzija hashtable. Sadrži popis parova vrijednosti ključeva koji su nasumično poredani. Hashmap omogućuje stvaranje nul vrijednosti unutar tablice, što nije dostupno s normalnom hashtable. Ove nul vrijednosti mogu biti potrebne za neke poslovne funkcije.
Hashtables koriste algoritme za raspršivanje za stvaranje ključa hashtable. Ovi algoritmi su matematičke funkcije koje pretvaraju plan-tekst podatke u numerički prikaz. Svaki algoritam za raspršivanje ima specifičan pristup kreiranju raspršenog ključa. Neki algoritmi imaju bolje karakteristike izvedbe, ali pate od problema s integritetom podataka.
Jedan od nedostataka algoritama za raspršivanje je problem kolizija raspršivanja. Kolizija se događa kada se dvije vrijednosti podataka u običnom tekstu izračunavaju na istu raspršenu vrijednost. To je obično neizbježno kada se radi s velikim skupovima podataka jer će na kraju doći do kolizije. Postoji nekoliko tehnika rješavanja sudara koje se koriste za hashtables. Svaka tehnika pokušava riješiti probleme sudara na specifičan način.
Odvojeno ulančavanje primjer je odvraćanja od sudara u tablici raspršivanja. Ovaj proces zahtijeva kreiranje popisa parova vrijednosti ključeva koji su se sudarili unutar hashtable. Zasebni popis veza prati sve kolizije. Koristi ga algoritam za raspršivanje kao dodatnu tablicu pretraživanja. Obično je odvojena razlučivost ulančavanja dovoljna za većinu konfiguracija hashtable.