Week 3 Flashcards

1
Q

Welke soorten datastructuren zijn er?

A
  1. Lineair
    - (Niet-)geïndiceerd
  2. Niet-lineair
    - Set, struct/record, object, netwerk (graaf), boom
  3. Abstract
    - Stack, dict, (priority) queue
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Wat zijn kenmerken van een array?

A

= Een rij gegevens die achter elkaar in het geheugen worden opgeslagen

  • Aantal elementen ligt vast
  • Alle gegevens zijn van hetzelfde type
  • Index => direct toegang tot bepaald gegeven
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Wat zijn kenmerken van een list?

A

= Een rij gegevens die in een bepaalde volgorde worden opgeslagen, waarvan de waar en hoe het in het geheugen wordt opgeslagen niet relevant is.

  • Aantal elementen ligt NIET vast.
  • Gegevens hoeven niet altijd van hetzelfde type te zijn.
  • Indexgebruik zoals bij array.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Wat zijn kenmerken van een tuple?

A

= Een rij gegevens die in een bepaalde volgorde worden opgeslagen, waarvan de waar en hoe het in het geheugen wordt opgeslagen niet relevant is.

  • Aantal elementen ligt vast.
  • Gegevens hoeven niet altijd van hetzelfde type te zijn.
  • In python: gegevens IN een tuple zijn immutable.
  • Indexgebruik zoals bij array en list.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Wat zijn kenmerken van een file?

A

= Een rij bits die onder een bepaalde naam is opgeslagen op extern geheugen.

  • Software moet weten hoe de bits in groepen verdeeld zijn en wat ze betekenen (bestandsformaat).
  • Tekstfile = opgedeeld in porties bits van vaste grootte waarbij elke portie een bepaald karakter voorstelt (ASCII).
  • Toegang is direct of sequentieel, afhankelijk van het opslagmedium en formaat van de file.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Wat zijn kenmerken van een linked list?

A

= De implementatie van een samenhangende, gerichte, lineaire graaf.

  • Knopen zijn geïmplementeerd als objecten waarvan een van de velden verwijst naar een object van hetzelfde type.
  • Pointer = Verwijzing = Geheugenadres van volgende knoop
  • Sequentiële toegang
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Wat zijn kenmerken van een set?

A

= Verzameling

  • Volgorde irrelevant
  • Indexgebruik niet zinvol
  • Geen duplicaten
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Wat zijn kenmerken van een dictionary?

A

= “Woordenboek”: een rij van gegevensparen

  • Eerste element is uniek en wordt gebruik als index.
  • Volgorde van de paren is irrelevant.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Wat zijn kenmerken van een struct en object?

A

Struct

  • Bestaat uit een aantal vaste onderdelen van verschillend type
  • Volgorde is irrelevant bij deze onderdelen
  • Onderdeel is te bereiken via een eigen naam (identifier), meestal voorafgegaan door de naam van de struct.

Object
- Bevat methodes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Wat zijn kenmerken van het netwerk en de boom?

A

= Implementaties van grafen en bomen

  • Knopen bevatten 1 of meer verwijzingen naar andere knopen.
  • Binaire boom: 2 extra velden per knoop (“LEFT” en “RIGHT”).
  • Als het vooraf onduidelijk is hoeveel verwijzingen in een knoop zitten ==> List van verwijzingen als veld van de knoop
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Wat is kenmerkend voor alle ADT’s?

A
  • Hoe het gegeven precies is opgeslagen is irrelevant.

- Alleen wat je ermee kunt doen is relevant

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Wat zijn kenmerken van een stack?

A
  • Gegevens individueel toevoegen of verwijderen.
  • Niet bedoeld om te zoeken.
  • LIFO (Last in, First out)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Wat zijn kenmerken van een queue?

A
  • Gegevens individueel toevoegen of verwijderen.
  • Niet bedoeld om te zoeken.
  • FIFO (First in, First out)
  • Deque = double-ended queue.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Wat zijn kenmerken van een priority heap?

A
  • Gegevens individueel toevoegen of verwijderen.
  • Niet bedoeld om te zoeken.
  • Kunt alleen gegevens met de hoogste prioriteit verwijderen.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Wat is het verschil tussen een binaire boom, een geordende binaire boom, een binaire heap en een binaire zoekboom?

A

Binaire boom: boom met maximaal 2 kinderen per knooppunt. Elke andere boom hier is een soort binaire boom.

Geordende binaire boom: boom waarvan de elementen een bepaalde volgorde aanhouden.

Binaire zoekboom: alle knooppunten links zijn kleiner, alle knooppunten rechts groter.

Binaire heap: Complete binaire boom, waarbij elk knooppunt kleiner is dan of gelijk is aan zijn ouder.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Wat is het verschil tussen directe en sequentiële toegang?

A

Bij directe toegang hoef je niet eerst de voorafgaande gegevens te lezen voordat je het relevante gegeven kunt lezen.

Bij sequentiële toegang moet je alle voorafgaande gegevens lezen voordat je het relevante gegeven kunt lezen.