Sobes.tech
Junior — Middle

Можете ли да обясните концепцията за HashMap и как работи за съхраняване на данни ключ-стойност?

sobes.tech AI

Отговор от AI

HashMap е структура от данни, която съхранява двойки ключ-стойност и осигурява бърз достъп до стойностите чрез ключа.

Принцип на работа:

  1. Ключът преминава през хеш-функция, която изчислява индекса в масива (кофа).
  2. Стойността се съхранява в тази кофа заедно с ключа.
  3. При търсене по ключ, отново се изчислява хешът и според индекса в масива се намира необходимата двойка.

Ако няколко ключа имат еднакъв хеш (колизия), те се съхраняват като списък или дърво в една и съща кофа.

Това позволява операциите по вмъкване, търсене и изтриване да се изпълняват приблизително за константно време (O(1)) средно.

Пример на Java:

HashMap<String, Integer> map = new HashMap<>();
map.put("apple", 3);
map.put("banana", 5);
int count = map.get("apple"); // ще върне 3

По този начин, HashMap е удобна за бърз достъп до данни по уникален ключ.