Sobes.tech
Junior — Middle

Ako sa prístupuje k prvkom v štruktúrach dát Map pomocou hash funkcie?

sobes.tech AI

Odpoveď od AI

V Go sú dátové štruktúry typu Map implementované na základe hash tabuliek. Pri prístupe k prvku pomocou kľúča sa deje nasledovné:

  1. Kľúč prejde hashovacou funkciou, ktorá vypočíta hash kód.
  2. Hash kód sa použije na určenie indexu vedra (bucket) v poli.
  3. V vedre sa hľadá prvok s zodpovedajúcim kľúčom (zvyčajne porovnaním kľúčov).

Toto zabezpečuje amortizovaný čas prístupu blízky O(1).

Príklad použitia mapy v Go:

m := make(map[string]int)
m["apple"] = 5
value := m["apple"] // value == 5

Vnútorné, pre kľúč "apple" sa vypočíta hash, podľa ktorého sa nájde potrebný prvok.