Встречается на 2% собеседований по Java
В чем разница между HashMap, LinkedHashMap и TreeMap
HashMap — неупорядоченная реализация Map, основанная на хеш-таблице. Обеспечивает O(1) для put() и get(), но порядок элементов не гарантируется.
LinkedHashMap — сохраняет порядок вставки (или порядок доступа, если accessOrder=true). Наследует HashMap, добавляя двусвязный список. Производительность чуть ниже HashMap.
TreeMap — реализация на основе красно-черного дерева. Элементы сортируются по ключам (естественный порядок или Comparator). O(log n) для операций.
Пример:
java
Map<String, Integer> hashMap = new HashMap<>();
hashMap.put("z", 3);
hashMap.put("a", 1); // Порядок: может быть {a=1, z=3} или {z=3, a=1}
Map<String, Integer> linkedMap = new LinkedHashMap<>();
linkedMap.put("z", 3);
linkedMap.put("a", 1); // Порядок: {z=3, a=1}
Map<String, Integer> treeMap = new TreeMap<>();
treeMap.put("z", 3);
treeMap.put("a", 1); // Порядок: {a=1, z=3} (сортировка по ключу)
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы