Junior — Middle
Aký algoritmus sa používa na vyhľadávanie prvku v TreeMap a aká je jeho efektívnosť?
sobes.tech AI
Odpoveď od AI
TreeMap v Jave je implementovaný na základe červeno-čierneho stromu, čo je varianta vyváženého binárneho vyhľadávacieho stromu. Na vyhľadanie prvku sa používa algoritmus binárneho vyhľadávania v strome, ktorý vďaka vyváženiu udržiava výšku stromu približne na úrovni (O(\log n)).
Toto zabezpečuje efektívne vyhľadávanie, vkladanie a odstraňovanie prvkov v čase (O(\log n)), čo je podstatne rýchlejšie ako lineárne vyhľadávanie v neseřadenej štruktúre.
Príklad použitia TreeMap:
TreeMap<Integer, String> map = new TreeMap<>();
map.put(10, "desať");
map.put(5, "päť");
map.put(20, "dvadsať");
String value = map.get(10); // vyhľadávanie podľa kľúča 10 v O(log n)