Hva er en hashmap?
I informatikk er en hashmap eller hash -tabell en form for strukturering av data slik at hvert stykke data er koblet til et unikt identifikasjonsnummer eller symbol. Dette tillater enkel henting, spesielt fra en stor database som inneholder tusenvis av oppføringer. Hashmap er ikke en spesifikk del av programmet, men refererer heller til en form for dataorganisasjon som tildeler hvert element, kjent som en nøkkel, i databasen til en verdi som står for det elementet. Hash -funksjonen er den delen av programmet som kobler nøkler til deres verdier.
Telefonbøker fungerer som et utmerket eksempel på en hashmap. Måten telefonboken er lagt ut representerer Hashmap -strukturen. Den fokuserer på å koble forskjellige verdier sammen og bare koble en verdi til en annen tilsvarende periode, eller telefonnummer. Navnene i telefonboken er nøklene, og telefonnumrene er verdiene som er knyttet til dem. Hver person i boka er tildelt et annet nummer og ingen to er like.
Postkontorbokser fungerer også somen metafor for hashmap. Hver person har en nøkkel til en enkelt boks. Boksen kan inneholde flere informasjonsstykker - regninger, brev, postkort - alt beregnet på den enkelte som har nøkkelen til boksen. Når riktig tast settes inn, eller matchet til riktig boks, åpnes den for å avsløre innholdet.
perfekt fungerende hashmaps vil koble en nøkkel til en minneskrem "i en database. Dessverre kan en faktor kjent som hasjkollisjon forekomme, der to nøkler går til samme boks. Dette skjer når en stor mengde data legges inn og det ikke er nok "bokser" til å imøtekomme det hele.
I motsetning til en telefonbok eller en postkontor, inkluderer hashmaps et tredje element i tillegg til nøkkelen og verdien eller boksen det samsvarer med. Det inkluderer også en hasjfunksjon. En person vet hvilken postkontorboks som er hennes, men en datamaskin må fortelles hvilken nøkkel som går til hvilken boks. Hash FuNction ser på nøkkelen, oversetter den til en serie med tall eller kode, og kobler den til boksen som inneholder den tilsvarende koden. Navnet på nøkkelen, for eksempel "Mary", er bare der, så det er lettere for folk å tolke, mens den faktiske koden er en streng med tall ment for datamaskinen å lese.