Назад к вопросам
Junior — Middle
66
Можешь ли ты объяснить отличительные особенности структуры данных TreeMap?
Компании, где спрашивали
Передовые Платежные Решения
Ответ от нейросети
sobes.tech AI
TreeMap в Java — это реализация интерфейса SortedMap, которая хранит пары ключ-значение в отсортированном порядке по ключам. Основные отличительные особенности:
- Отсортированность: элементы автоматически упорядочиваются по ключу в естественном порядке (если ключи Comparable) или по заданному Comparator.
- Реализация на основе красно-черного дерева: обеспечивает логарифмическое время доступа, вставки и удаления элементов.
- Нельзя хранить null в качестве ключа: попытка вставить null в ключ вызовет NullPointerException.
- Поддержка навигационных методов: такие как firstKey(), lastKey(), subMap(), headMap(), tailMap() для работы с диапазонами ключей.
Пример использования:
import java.util.TreeMap;
TreeMap<Integer, String> map = new TreeMap<>();
map.put(3, "три");
map.put(1, "один");
map.put(2, "два");
for (Integer key : map.keySet()) {
System.out.println(key + " -> " + map.get(key));
}
// Вывод будет отсортирован по ключам: 1, 2, 3