1.Makkelijk
Wat slaat een map (dictionary) op?
- AAlleen waarden in volgorde van invoegen
- BParen van gelijke sleutels
- CWaarden gesorteerd op grootte
- DSleutel-waardeparen met unieke sleutels
2.Makkelijk
De diepte van een knoop in een boom is:
- AHet aantal kanten van de wortel tot die knoop
- BHet aantal kanten van die knoop tot het diepste blad
- CHet aantal kinderen van die knoop
- DHet aantal knopen in zijn subboom
3.Makkelijk
Hoe worden de elementen van een array in het geheugen opgeslagen?
- AIn een boom van geheugenpagina's
- BIn één aaneengesloten blok, na elkaar
- COp willekeurige plaatsen gekozen door een hash
- DVerspreid, verbonden door pointers
4.Gemiddeld
Welke balansvoorwaarde handhaaft een AVL-boom in elke knoop?
- AElke knoop is rood of zwart gekleurd
- BBeide subbomen van elke knoop bevatten precies hetzelfde aantal knopen
- CAlle bladeren liggen op precies dezelfde diepte
- DDe hoogten van de linker- en rechtersubboom verschillen hoogstens 1
5.Gemiddeld
Welke datastructuur wordt gebruikt om te controleren of de haakjes in "{[()]}" in balans zijn?
- AEen hashtabel
- BEen queue
- CEen stack
- DEen binaire zoekboom
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?
- AEen array doorlopen kost in totaal O(1), een gekoppelde lijst doorlopen O(n)
- BArrays gebruiken minder instructies om waarden te vergelijken
- CArray-elementen liggen aaneengesloten, zodat ze de CPU-cache goed benutten
- DGekoppelde lijsten slaan elementen altijd op schijf op
7.Moeilijk
In een circulaire buffer kan front == rear zowel leeg als vol betekenen. Wat is een gangbare manier om ze te onderscheiden?
- ASla front en rear op in dezelfde variabele
- BMaak de buffer altijd leeg als front gelijk is aan rear, zodat de toestand leeg is
- CHoud een apart aantal elementen bij, of laat altijd één plaats ongebruikt
- DMaak de buffergrootte een macht van twee
8.Moeilijk
Welk probleem van linear probing vermindert double hashing vooral?
- ADe O(n)-kosten van het lezen van de waarde van een sleutel
- BDe noodzaak om sleutels in de tabel op te slaan
- CPrimaire clustering, waarbij lange reeksen bezette plaatsen ontstaan
- DDe noodzaak van een hashfunctie
Antwoordenblad
- 1. D · Sleutel-waardeparen met unieke sleutels
- 2. A · Het aantal kanten van de wortel tot die knoop
- 3. B · In één aaneengesloten blok, na elkaar
- 4. D · De hoogten van de linker- en rechtersubboom verschillen hoogstens 1
- 5. C · Een stack
- 6. C · Array-elementen liggen aaneengesloten, zodat ze de CPU-cache goed benutten
- 7. C · Houd een apart aantal elementen bij, of laat altijd één plaats ongebruikt
- 8. C · Primaire clustering, waarbij lange reeksen bezette plaatsen ontstaan
Volledige stapsgewijze oplossingen: oefen dit onderwerp op examproblems.com.