Back to questions
Junior — Middle
73
Можете объяснить принцип функционирования структуры данных HashMap?
Answer from AI
sobes.tech AI
HashMap — это структура данных, которая хранит пары ключ-значение и обеспечивает быстрый доступ к значениям по ключу. Принцип работы основан на использовании хеш-функции, которая преобразует ключ в индекс массива (бакета).
Когда вы добавляете элемент, ключ хешируется, и значение помещается в соответствующий бакет. При поиске по ключу хеш-функция вычисляет индекс, и в бакете ищется нужный элемент.
Для обработки коллизий (когда разные ключи дают одинаковый хеш) обычно используется цепочки (linked list) или дерево (в новых реализациях). Это позволяет хранить несколько элементов в одном бакете.
Пример на Java:
HashMap<String, Integer> map = new HashMap<>();
map.put("apple", 3);
int count = map.get("apple"); // 3
HashMap обеспечивает среднюю сложность операций вставки и поиска около O(1).