Junior — Middle
¿Qué algoritmo se utiliza para buscar un elemento en TreeMap y qué tan eficiente es?
sobes.tech AI
Respuesta de la IA
TreeMap en Java está implementado sobre un árbol rojo-negro, que es una variante de árbol binario de búsqueda balanceado. Para buscar un elemento, se utiliza un algoritmo de búsqueda binaria en el árbol, que gracias al balanceo mantiene la altura del árbol aproximadamente igual a (O(\log n)).
Esto garantiza una búsqueda, inserción y eliminación eficientes en tiempo (O(\log n)), mucho más rápido que la búsqueda lineal en una estructura no ordenada.
Ejemplo de uso de TreeMap:
TreeMap<Integer, String> map = new TreeMap<>();
map.put(10, "diez");
map.put(5, "cinco");
map.put(20, "veinte");
String value = map.get(10); // búsqueda por clave 10 en O(log n)