Sobes.tech
Назад к вопросам
Junior — Middle
128

Объясните концепцию TreeMap и как она реализована в языке Java.

Компании, где спрашивали
СБЕРСБЕР
Банк РоссияБанк Россия
OZONOZON
AstonAston

Ответ от нейросети

sobes.tech AI

TreeMap в Java — это реализация интерфейса NavigableMap, которая хранит пары ключ-значение в отсортированном порядке по ключам. В основе TreeMap лежит красно-чёрное дерево — сбалансированное двоичное дерево поиска, обеспечивающее операции вставки, удаления и поиска за O(log n).

Особенности TreeMap:

  • Ключи автоматически сортируются по естественному порядку или с помощью Comparator, если он задан.
  • Позволяет быстро получать подмножества ключей, навигационные методы (например, lowerKey, higherKey).
  • Не допускает null в качестве ключа (в отличие от HashMap).

Пример использования:

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