Saltar a contenido

TreeMap

TreeMap implementa la interfaz Map usando un Red-Black Tree. Mantiene las claves ordenadas.

Características

Aspecto Detalle
Estructura Red-Black Tree (árbol auto-balanceado)
Orden Claves ordenadas (natural o Comparator)
Claves únicas No permite duplicados
Operaciones get, put, remove: O(log n)
Null NO permite clave null

Cuándo usar

  • Necesitas claves ordenadas
  • Búsquedas por rango (subMap, headMap, tailMap)
  • Ordenación natural de claves

Ejemplos

// Orden natural
Map<String, Integer> notas = new TreeMap<>();
notas.put("Carlos", 85);
notas.put("Ana", 92);
notas.put("Beatriz", 78);
// Itera: Ana → Beatriz → Carlos

// Comparator personalizado (inverso)
Map<String, Integer> descendente = new TreeMap<>(
    Comparator.reverseOrder()
);

// Rango de búsqueda
SortedMap<String, Integer> aprobados = 
    notas.tailMap("C"); // Carlos en adelante

Escenarios BDD

El proyecto incluye tests para: - Ordenación de claves - Búsquedas por rango - Operaciones de navegación (firstKey, lastKey)