Junior — Middle
Czy możesz wyjaśnić koncepcję HashMap i jak działa do przechowywania danych klucz-wartość?
sobes.tech AI
Odpowiedź od AI
HashMap to struktura danych, która przechowuje pary klucz-wartość i zapewnia szybki dostęp do wartości za pomocą klucza.
Zasada działania:
- Klucz przechodzi przez funkcję hash, która oblicza indeks w tablicy (kubełku).
- Wartość jest zapisywana w tym kubełku razem z kluczem.
- Podczas wyszukiwania po kluczu, ponownie oblicza się hash i według indeksu w tablicy znajduje się potrzebna para.
Jeśli kilka kluczy ma ten sam hash (kolizja), są one przechowywane jako lista lub drzewo w tym samym kubełku.
Pozwala to na wykonywanie operacji wstawiania, wyszukiwania i usuwania w średnim czasie około stałym (O(1)).
Przykład w Java:
HashMap<String, Integer> map = new HashMap<>();
map.put("apple", 3);
map.put("banana", 5);
int count = map.get("apple"); // zwróci 3
W ten sposób HashMap jest przydatna do szybkiego dostępu do danych po unikalnym kluczu.