Встречается на 2% собеседований по Java
Какая сложность операций в HashMap при использовании дерева
В Java 8+ при коллизиях в HashMap используется сбалансированное дерево (красно-черное) для хранения элементов, когда размер бакета превышает TREEIFY_THRESHOLD (8).
Сложность операций:
- В среднем случае (без коллизий): O(1)
- В худшем случае (все элементы в одном бакете):
- До Java 8: O(n) (список)
- Java 8+: O(log n) (дерево)
Пример:
java
Map<Integer, String> map = new HashMap<>();
// Вставка: O(1) в среднем, O(log n) при коллизиях
map.put(1, "a");
// Поиск: O(1) в среднем, O(log n) при коллизиях
String value = map.get(1);
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы