Sobes.tech
Junior — Middle

Ar galite paaiškinti HashMap koncepciją ir kaip ji veikia raktų-reikšmių duomenų saugojimui?

sobes.tech AI

Atsakymas iš AI

HashMap yra duomenų struktūra, kuri saugo poras raktas-reikšmė ir užtikrina greitą prieigą prie reikšmių naudojant raktą.

Veikimo principas:

  1. Raktas pereina per maišos funkciją, kuri apskaičiuoja indeksą masyve (krepšelyje).
  2. Reikšmė saugoma šiame krepšelyje kartu su raktu.
  3. Ieškant pagal raktą, vėl apskaičiuojamas maišos funkcija ir pagal indeksą masyve randamas reikalingas pora.

Jei keli raktai turi tą patį maišos reikšmę (kolizija), jie saugomi kaip sąrašas arba medis tame pačiame krepšelyje.

Tai leidžia atlikti įterpimo, paieškos ir ištrynimo operacijas maždaug pastovaus laiko (O(1)) vidutiniškai.

Pavyzdys Java:

HashMap<String, Integer> map = new HashMap<>();
map.put("apple", 3);
map.put("banana", 5);
int count = map.get("apple"); // grąžins 3

Taip HashMap yra naudinga greitam duomenų prieigai naudojant unikalų raktą.