Встречается на 2% собеседований по Java
Что происходит с внутренней структурой бакета в HashMap при добавлении большого количества элементов
При добавлении элементов в HashMap, каждый элемент помещается в бакет на основе хэш-кода ключа. Если в бакете уже есть элементы, они хранятся как связанный список (до Java 8) или преобразуются в сбалансированное дерево (с Java 8+), если количество элементов в бакете превышает TREEIFY_THRESHOLD (по умолчанию 8).
При достижении loadFactor (по умолчанию 0.75) HashMap увеличивает размер массива бакетов в 2 раза (resize()), пересчитывает хэши и перераспределяет элементы.
Пример:
java
Map<String, Integer> map = new HashMap<>();
for (int i = 0; i < 1000; i++) {
map.put("key" + i, i); // При переполнении бакеты могут стать деревьями
}Это обеспечивает амортизированную сложность O(1) для операций put() и get().

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы