Sobes.tech
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)