Junior — Middle
Erklären Sie das Konzept von TreeMap und wie es in der Programmiersprache Java implementiert ist.
sobes.tech KI
Antwort von 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