Sobes.tech
Junior — Middle

Hoe verschillen de gegevensstructuren Dictionary en HashSet in termen van gebruik en interne structuur?

sobes.tech AI

Antwoord van AI

Dictionary en HashSet zijn datastructuren in C# gebaseerd op hash-tabellen, maar met verschillende doelen en opstellingen:

  • Dictionary<TKey, TValue> is een collectie van sleutel-waardeparen. Hiermee kun je snel een waarde vinden op basis van een unieke sleutel. Intern gebruikt het hashing van sleutels voor snelle toegang.

  • HashSet<T> is een collectie van unieke elementen zonder sleutel-waardeparen. Wordt gebruikt om een verzameling unieke objecten op te slaan en voor snelle zoekopdrachten, toevoegingen of verwijderingen.

Belangrijkste verschillen:

  • Dictionary slaat paren op, HashSet alleen sleutels (elementen).
  • Dictionary geeft de waarde op basis van de sleutel, HashSet controleert of een element bestaat.

Voorbeeld:

var dict = new Dictionary<int, string>();
dict[1] = "één";

var set = new HashSet<int>();
set.Add(1);

bool hasKey = dict.ContainsKey(1); // true
bool hasElement = set.Contains(1); // true

Kortom, kies voor Dictionary wanneer je een sleutel aan een waarde wilt koppelen, en voor HashSet wanneer uniciteit en snelle zoekopdrachten belangrijk zijn.