Junior — Middle
Existuje implementovaná dátová štruktúra, ktorá kombinuje vlastnosti hash tabuľky a usporiadania prvkov?
sobes.tech AI
Odpoveď od AI
Áno, takáto dátová štruktúra existuje. V Jave a Androide je to trieda LinkedHashSet, ktorá kombinuje vlastnosti hashovej tabuľky a zachováva poradie vkladania prvkov.
LinkedHashSet ukladá prvky ako jedinečné (ako HashSet) a pritom zachováva poradie ich pridania, čo umožňuje iteráciu prvkov v rovnakom poradí.
Príklad použitia LinkedHashSet:
LinkedHashSet<String> linkedSet = new LinkedHashSet<>();
linkedSet.add("one");
linkedSet.add("two");
linkedSet.add("three");
for (String s : linkedSet) {
System.out.println(s); // Vypíše: one, two, three
}
Ak je potrebné zoradenie podľa prirodzeného poradia, možno použiť TreeSet, ale ten nie je založený na hashovej tabuľke.