Skip to main content

Vad är en hashmap?

I datavetenskap är en hashmap eller hashtabell en form av strukturering av data så att varje data är kopplad till ett unikt identifikationsnummer eller symbol.Detta möjliggör enkel återhämtning, särskilt från en stor databas som innehåller tusentals poster.HashMap är inte en specifik del av programmet, utan hänvisar snarare till en form av dataorganisation som tilldelar varje objekt, känd som en nyckel, i databasen till ett värde som står för det objektet.Hash -funktionen är den del av programmet som länkar nycklarna till deras värden.

Telefonböcker fungerar som ett utmärkt exempel på en hashmap.Hur telefonboken läggs ut representerar HashMap -strukturen.Den fokuserar på att koppla olika värden tillsammans och bara koppla ett värde till en annan motsvarande term eller telefonnummer.Namnen i telefonboken är nycklarna och telefonnumren är värdena som är associerade med dem.Varje person i boken tilldelas ett annat nummer och inga två är lika.

Postkontorslådor fungerar också som en metafor för hashmap.Varje person har en nyckel till en enda låda.Lådan kan hålla flera informationsdelar mdash;räkningar, brev, vykort mdash;Alla avsedda för den person som har nyckeln till lådan.När rätt tangent sätts in eller matchas med rätt ruta öppnar den att avslöja dess innehåll.

Perfekt fungerande hashmappar skulle länka en nyckel till en minnesruta i en datordatabas.Tyvärr kan en faktor som kallas hashkollision inträffa, där två nycklar går till samma ruta.Detta händer när en stor mängd data matas in och det inte finns tillräckligt med lådor för att rymma allt.

Till skillnad från en telefonbok eller en postkontor, inkluderar hashmaps ett tredje element utöver nyckeln och värdet eller rutan den matchar.Det innehåller också en hashfunktion.En person vet vilken postkontor som är hennes, men en dator måste berättas vilken nyckel som går till vilken ruta.Hash -funktionen tittar på nyckeln, översätter den till en serie nummer eller kod och länkar den till rutan som innehåller motsvarande kod.Namnet på nyckeln, som Mary, är bara där så det är lättare för människor att tolka, medan den faktiska koden är en rad siffror som är avsedd för datorn att läsa.