Sobes.tech
Junior — Middle

Ako je implementované zoradenie prvkov v TreeSet a ako funguje?

sobes.tech AI

Odpoveď od AI

TreeSet v Jave je implementovaný na základe červeno-čierneho stromu, čo je vyvážený binárny vyhľadávací strom. Elementy v TreeSet sú uložené v zoradenom poradí, ktoré je určené buď prirodzeným poradím prvkov (prostredníctvom rozhrania Comparable), alebo porovnávačom zadaným do konštruktora TreeSet.

Pri pridávaní prvku TreeSet ho vloží do stromu tak, aby zachoval poradí a rovnováhu. Vďaka tomu operácie vyhľadávania, vkladania a odstraňovania sa vykonávajú v čase O(log n).

Príklad:

TreeSet<String> set = new TreeSet<>();
set.add("banana");
set.add("apple");
set.add("cherry");

for (String ovocie : set) {
    System.out.println(ovocie);
}
// Výstup:
// apple
// banana
// cherry

Týmto spôsobom TreeSet zabezpečuje automatické zoradenie a rýchly prístup k prvkom.