Junior — Middle
Is er een geïmplementeerde datastructuur die de eigenschappen van een hash-tabel en de ordening van elementen combineert?
sobes.tech AI
Antwoord van AI
Ja, zo'n datastructuur bestaat. In Java en Android is dit de klasse LinkedHashSet, die de eigenschappen van een hash-tabel combineert en de volgorde van invoeging van elementen behoudt.
LinkedHashSet slaat elementen op als uniek (zoals HashSet) en behoudt de volgorde waarin ze zijn toegevoegd, waardoor je door de elementen in dezelfde volgorde kunt itereren.
Voorbeeld van gebruik van LinkedHashSet:
LinkedHashSet<String> linkedSet = new LinkedHashSet<>();
linkedSet.add("one");
linkedSet.add("two");
linkedSet.add("three");
for (String s : linkedSet) {
System.out.println(s); // Zal afdrukken: one, two, three
}
Als sortering op natuurlijke volgorde nodig is, kan TreeSet worden gebruikt, maar deze is niet gebaseerd op een hash-tabel.