1.Makkelijk
Wat is een cykel in een graaf?
- AEen pad dat begint en eindigt in dezelfde knoop
- BEen pad dat elke knoop bezoekt
- CEen kant met gewicht nul
- DEen knoop zonder kanten
2.Makkelijk
Wat wordt in een representatie als adjacency list (buurlijst) van een graaf per knoop opgeslagen?
- AHet kortste pad naar elke andere knoop
- BEen lijst van de buurknopen
- CEen rij van V Booleaanse waarden
- DHet totale aantal kanten in de graaf
3.Makkelijk
Wat is een botsing (collision) in een hashtabel?
- ADe tabel heeft geen geheugen meer
- BEen sleutel kan helemaal niet worden gehasht
- CTwee verschillende sleutels worden op dezelfde index afgebeeld
- DTwee gelijke sleutels worden twee keer opgeslagen
4.Gemiddeld
Je hebt een verwijzing naar een knoop in het midden van een lijst. In welke lijst kun je die in O(1) verwijderen?
- AEen enkelvoudig gekoppelde lijst
- BEen dubbel gekoppelde lijst
- CEen gesorteerde array
- DEen dynamische array
5.Gemiddeld
Welke balansvoorwaarde handhaaft een AVL-boom in elke knoop?
- ABeide subbomen van elke knoop bevatten precies hetzelfde aantal knopen
- BElke knoop is rood of zwart gekleurd
- CDe hoogten van de linker- en rechtersubboom verschillen hoogstens 1
- DAlle bladeren liggen op precies dezelfde diepte
6.Gemiddeld
Waarom is het doorlopen van een array in de praktijk vaak veel sneller dan het doorlopen van een gekoppelde lijst van dezelfde lengte?
- AArray-elementen liggen aaneengesloten, zodat ze de CPU-cache goed benutten
- BGekoppelde lijsten slaan elementen altijd op schijf op
- CArrays gebruiken minder instructies om waarden te vergelijken
- DEen array doorlopen kost in totaal O(1), een gekoppelde lijst doorlopen O(n)
7.Moeilijk
Wat is het belangrijkste voordeel van een skiplist ten opzichte van een gesorteerde gekoppelde lijst?
- AHij slaat sleutels ongeordend op
- BGegarandeerd zoeken in O(1), omdat elke knoop een pointer naar elke andere knoop bewaart
- CVerwacht zoeken in O(log n) door meerdere niveaus van voorwaartse pointers
- DHij gebruikt geen extra geheugen
8.Moeilijk
Waarom zou een server zijn hashfunctie willekeurig kiezen uit een universele familie?
- AOm het vergroten van de tabel overbodig te maken
- BOm te garanderen dat geen twee sleutels ooit botsen, welke sleutels een aanvaller ook stuurt
- COm het zeer onwaarschijnlijk te maken dat een aanvaller veel sleutels kan kiezen die allemaal botsen
- DOm de hashtabel gesorteerd te maken
Antwoordenblad
- 1. A · Een pad dat begint en eindigt in dezelfde knoop
- 2. B · Een lijst van de buurknopen
- 3. C · Twee verschillende sleutels worden op dezelfde index afgebeeld
- 4. B · Een dubbel gekoppelde lijst
- 5. C · De hoogten van de linker- en rechtersubboom verschillen hoogstens 1
- 6. A · Array-elementen liggen aaneengesloten, zodat ze de CPU-cache goed benutten
- 7. C · Verwacht zoeken in O(log n) door meerdere niveaus van voorwaartse pointers
- 8. C · Om het zeer onwaarschijnlijk te maken dat een aanvaller veel sleutels kan kiezen die allemaal botsen
Volledige stapsgewijze oplossingen: oefen dit onderwerp op examproblems.com.