Sobes.tech
Junior — Middle

Kunt u het principe van een hashtabel uitleggen en hoe gegevens daarin worden opgeslagen?

sobes.tech AI

Antwoord van AI

Een hash-tabel is een datastructuur die zeer snelle toegang tot gegevens biedt via een sleutel. Het werkingsprincipe is gebaseerd op het gebruik van een hashfunctie, die de sleutel omzet in een index van een array waar de bijbehorende waarde wordt opgeslagen.

Wanneer je een sleutel-waarde paar wilt opslaan, berekent de hashfunctie de index, en de gegevens worden in de cel van de array op die index geplaatst. Bij het zoeken op sleutel berekent de hashfunctie opnieuw de index, en wordt de benodigde waarde snel gevonden.

Als twee verschillende sleutels dezelfde index geven (botsing), wordt meestal de ketenmethode gebruikt: in de cel wordt een lijst opgeslagen van alle elementen met die index, en de zoekactie gebeurt in die lijst.

Voorbeeld in Dart (Flutter):

void main() {
  Map<String, int> hashTable = {};
  hashTable['apple'] = 5;
  hashTable['banana'] = 3;

  print(hashTable['apple']); // 5
}

Hier is Map een implementatie van een hash-tabel, waarbij de sleutel een string is en de waarde een getal.