Basis informatica: samenvattingspakket

Formuleoverzichten, de belangrijkste methodestappen voor elk onderwerp en 20 oefenopgaven, met volledige oplossingen achterin.

Nieuwe opgavenTerug naar het vak

Kies in het printvenster “Opslaan als pdf” om een kopie op je apparaat te bewaren.

1Formules en methoden

Talstelsels

Plaatswaarden
binair 2k, octaal 8k, hex 16k
Naar decimaal
Σ dk·bk
Vanuit decimaal
deel door het grondtal en lees de resten van onder naar boven
Hex ↔ binair
één hexcijfer = 4 bits
Two's complement
inverteer de bits en tel 1 op

Propositielogica & bewijzen

Rijen van een waarheidstabel
2ⁿ
Implicatie
p → q ≡ ¬p ∨ q ≡ ¬q → ¬p
Ontkende implicatie
¬(p → q) ≡ p ∧ ¬q
Bi-implicatie
p ↔ q ≡ (p → q) ∧ (q → p)
De Morgan
¬(p ∧ q) ≡ ¬p ∨ ¬q, ¬(p ∨ q) ≡ ¬p ∧ ¬q
Distributieve wetten
p ∨ (q ∧ r) ≡ (p ∨ q) ∧ (p ∨ r), p ∧ (q ∨ r) ≡ (p ∧ q) ∨ (p ∧ r)
Ontkende kwantoren
¬∀x P(x) ≡ ∃x ¬P(x), ¬∃x P(x) ≡ ∀x ¬P(x)
Modus ponens, modus tollens
p → q, p ⊢ q; p → q, ¬q ⊢ ¬p

Methode

  1. Tel de verschillende variabelen: de waarheidstabel heeft 2ⁿ rijen, beginnend met alle variabelen op 1.
  2. Geef elke deelformule een eigen kolom en vul de kolommen van binnen naar buiten in.
  3. Pas de regel van elk voegwoord toe: → is alleen 0 bij 1 → 0, ↔ is 1 als beide kanten gelijk zijn.
  4. Vergelijk bij equivalenties de laatste kolommen rij voor rij; kijk bij een redenering alleen naar de rijen waarin alle premissen 1 zijn.
  5. Om een bewering met kwantor te ontkennen, schuif je ¬ naar binnen, verwissel je ∀ en ∃ en ontken je de binnenste formule.

Digitale logica: poorten, K-kaarten & flip-flops

Basispoorten
A·B, A + B, A′, (A·B)′, (A + B)′, A ⊕ B
Booleaanse regels
X + X′ = 1, X·X′ = 0, X + XY = X, XY + XY′ = X
De Morgan
(X·Y)′ = X′ + Y′, (X + Y)′ = X′·Y′
Volgorde van de Karnaugh-kaart
00, 01, 11, 10 (Gray code)
Groep van 2ᵏ cellen
verliest k variabelen
4-naar-1-multiplexer
F = A′B′I0 + A′BI1 + AB′I2 + ABI3
Flip-flops
D: Q⁺ = D, T: Q⁺ = T ⊕ Q, JK: Q⁺ = JQ′ + K′Q
Tellers
n-bits: 2ⁿ toestanden; mod-N: kleinste n met 2ⁿ ≥ N; fuit = fklok/N
Ripple-teller
fmax = 1/(n·tpd)
Ring- en Johnson-tellers
n en 2n toestanden

Methode

  1. Werk bij een schakeling van de ingangen naar de uitgang, één poort tegelijk, en schrijf de waarde op elke draad, of schrijf de uitdrukking op en vul de waarheidstabel in.
  2. Zet voor vereenvoudiging de enen (en de don’t-cares als X) in een Karnaugh-kaart met rijen en kolommen in Gray-code: 00, 01, 11, 10.
  3. Dek de enen met zo weinig en zo grote groepen van 1, 2, 4, 8 of 16 cellen als mogelijk, met terugloop om de randen; elke groep is één productterm van de variabelen die constant blijven. Groepeer de nullen voor de POS-vorm.
  4. Lees bij flip-flops en tellers de ingangen af op elke actieve klokflank, schrijf de toestand na elke flank op, en onthoud dat een n-bits teller na 2ⁿ toestanden terugloopt.

Getaltheorie & modulair rekenen

Deling met rest
a = q·n + r, 0 ≤ r < n
Euclides
gcd(a, b) = gcd(b, a mod b)
Kleinste gemene veelvoud
lcm(a, b) = a·b/gcd(a, b)
Inverse
a·a⁻¹ ≡ 1 (mod n), gcd(a, n) = 1
Lineaire congruentie
a·x ≡ b → x ≡ a⁻¹·b (mod n)
Eulers φ-functie
φ(n) = n·∏(1 − 1/p), φ(pᵏ) = pᵏ − pᵏ⁻¹
Fermat
aᵖ⁻¹ ≡ 1 (mod p)
RSA
n = pq, φ = (p − 1)(q − 1), d = e⁻¹ mod φ, c = mᵉ mod n, m = cᵈ mod n

Methode

  1. Reduceer eerst elk getal modulo n; resten liggen tussen 0 en n − 1.
  2. Deel voor een ggd herhaaldelijk met het algoritme van Euclides; de laatste rest ongelijk aan nul is de ggd.
  3. Laat voor een inverse het uitgebreide algoritme lopen en houd de coëfficiënt van a; tel n erbij op als die negatief is.
  4. Los a·x ≡ b op door met a⁻¹ te vermenigvuldigen; combineer twee congruenties door x = r₁ + m₁k te schrijven.
  5. Schrijf bij machten de exponent binair en kwadrateer herhaaldelijk; in RSA is d = e⁻¹ mod φ(n) met φ(n) = (p − 1)(q − 1).

Grafentheorie

Handenschudlemma
Σ deg(v) = 2|E|
Volledige grafen
|E(Kn)| = n(n − 1)/2, |E(Km,n)| = m·n
Reguliere graaf
|E| = n·k/2
Boom en bos
|E| = n − 1, |E| = n − c
Bladeren van een boom
L = 2 + Σ (deg(v) − 2) over deg(v) ≥ 3
Euler
circuit: alle graden even; pad: precies 2 oneven graden
Hamiltoncircuits in Kn
(n − 1)!/2
Dijkstra-update
d(v) = min(d(v), d(u) + w(u, v))
Wandelingen van lengte L
(Mᴸ)ij

Methode

  1. Schrijf de graad van elk hoekpunt op; de graden zijn samen twee keer het aantal kanten.
  2. Controleer bij Eulervragen of de graaf samenhangend is en tel de hoekpunten met oneven graad.
  3. Gebruik bij bomen n − 1 kanten en het handenschudlemma.
  4. Houd bij Dijkstra een tabel met voorlopige afstanden bij en leg elke ronde het onafgehandelde hoekpunt met de kleinste afstand vast.
  5. Sorteer voor een minimaal opspannende boom de kanten op gewicht en sla elke kant over die een cykel sluit (Kruskal), of laat één boom groeien vanuit een beginpunt (Prim).

IPv4-subnetting

Hosts per subnet
2(32 − prefix) − 2 (/31: 2, /32: 1)
Blokgrootte
256 − (mask octet)
Netwerkadres
IP AND masker
Broadcastadres
IP OR (NOT masker): alle hostbits op 1
Subnetten uit n geleende bits
2n

2Oefenopgaven

1.TalstelselsGemiddeld
plaatswaarden in two's complement1−12806403211618041201

Het 8-bits patroon 1001 1010 slaat een geheel getal met teken op in two's complement. Wat is de waarde N in decimaal?

1001 10108 bit
N =
2.TalstelselsMoeilijk
310 codes, b = ? bits?2ᵇ⁻¹…?4?2?1

Een systeem moet elk van 310 items een eigen binaire code van gelijke lengte geven. Wat is het kleinste aantal bits b dat nodig is?

310
b = bit
3.Propositielogica & bewijzenGemiddeld
abcc ∧ (c → a)a → b(c ∧ (c → a)) ∨ (a → b)111?110?101?100?011?010?001?000?

In hoeveel van de 8 rijen van zijn waarheidstabel is (c ∧ (c → a)) ∨ (a → b) waar? Noem dit aantal N.

(c ∧ (c → a)) ∨ (a → b)
N =
4.Propositielogica & bewijzenMoeilijk
¬rr ∨ pq ∨ pr ∧ p

De premissen q ∨ r; ¬q ∨ p zijn gegeven. Welke conclusie volgt eruit? Klik erop.

q ∨ r¬q ∨ p
  1. 1¬r
  2. 2r ∨ p
  3. 3q ∨ p
  4. 4r ∧ p
5.Digitale logica: poorten, K-kaarten & flip-flopsGemiddeld
ABCD00011110000111101111111

In deze Karnaugh-kaart heeft precies één 1 geen naburige 1, dus hij blijft een groep van één cel (een volledige minterm van vier literals) in de minimale SOP-vorm. Buren over de randen van de kaart tellen mee. Klik op die cel.

F = Σm(1, 2, 3, 4, 5, 8, 13)
  1. 1AB = 00, CD = 00
  2. 2AB = 00, CD = 01
  3. 3AB = 00, CD = 11
  4. 4AB = 00, CD = 10
  5. 5AB = 01, CD = 00
  6. 6AB = 01, CD = 01
  7. 7AB = 01, CD = 11
  8. 8AB = 01, CD = 10
  9. 9AB = 11, CD = 00
  10. 10AB = 11, CD = 01
  11. 11AB = 11, CD = 11
  12. 12AB = 11, CD = 10
  13. 13AB = 10, CD = 00
  14. 14AB = 10, CD = 01
  15. 15AB = 10, CD = 11
  16. 16AB = 10, CD = 10
6.Digitale logica: poorten, K-kaarten & flip-flopsMoeilijk
ABCD00011110000111100011X31204050706112X131151141809X11110

Bepaal de minimale SOP-vorm van F(A, B, C, D) = Σm(1, 2, 8, 10, 12, 14, 15) + d(3, 11, 13), waarbij d de don’t-care-condities aangeeft. Hoeveel literals L bevat die?

F(A, B, C, D) = Σm(1, 2, 8, 10, 12, 14, 15) + d(3, 11, 13)
L =
7.Getaltheorie & modulair rekenenGemiddeld

Vind het kleinste positieve gehele getal x met x ≡ 1 (mod 7) en x ≡ 4 (mod 13).

x ≡ 1 (mod 7)x ≡ 4 (mod 13)
x =
8.Getaltheorie & modulair rekenenMoeilijk
mc = me​ mod ncm = cd​ mod nm(n, e) = (473, 17)d = ?

Een RSA-sleutel gebruikt de priemgetallen p = 11 en q = 43 en de publieke exponent e = 17. Bepaal de privé-exponent d (0 < d < φ(n)).

p = 11q = 43e = 17
d =
9.Algoritmen & complexiteitGemiddeld

Wat meet geamortiseerde analyse?

  1. ADe verwachte kosten over willekeurige invoer
  2. BDe kosten van een algoritme bij de beste invoer
  3. CDe gemiddelde kosten per bewerking over een worst-casereeks van bewerkingen
  4. DDe kosten van de ene duurste bewerking ergens in de reeks
10.Algoritmen & complexiteitMoeilijk

Welke bewering over P en NP is juist?

  1. AElk probleem in P zit ook in NP
  2. BNP betekent "niet polynomiaal"
  3. COplossingen van NP-problemen kunnen niet snel worden geverifieerd
  4. DEr is bewezen dat P ≠ NP
11.DatastructurenGemiddeld

Wat is het doel van een sentinelknoop (dummyknoop) in een gekoppelde lijst?

  1. ADe lijst gesorteerd maken
  2. BHet aantal elementen opslaan
  3. CDe code vereenvoudigen door speciale gevallen aan kop of staart weg te nemen
  4. DVoorkomen dat de lijst groeit voorbij een vast maximumaantal knopen
12.DatastructurenMoeilijk

Je moet uit een stroom van n getallen de k kleinste waarden bewaren met O(k) geheugen. Welke aanpak werkt in O(n log k) tijd?

  1. AEen min-heap met alle n waarden, waaruit aan het eind de k kleinste worden gehaald
  2. BEen FIFO-queue van de laatste k waarden
  3. CEen max-heap van grootte k, waarvan je de wortel vervangt als er een kleinere waarde binnenkomt
  4. DEen gesorteerde array van alle n waarden
13.GrafentheorieGemiddeld

Een boom heeft 3 hoekpunten van graad 3, 2 hoekpunten van graad 4, 3 hoekpunten van graad 5, en al zijn andere hoekpunten zijn bladeren (graad 1). Hoeveel bladeren L heeft hij?

3 × deg 32 × deg 43 × deg 5
L =
14.GrafentheorieMoeilijk
11824488612142ABCDEFG

Het algoritme van Dijkstra start bij A. Klik op het hoekpunt dat in ronde 5 wordt vastgelegd (definitief gemaakt); A zelf is ronde 1.

start: Aronde 5
  1. 1A
  2. 2B
  3. 3C
  4. 4D
  5. 5E
  6. 6F
  7. 7G
15.Databases & SQLGemiddeld

Een LEFT JOIN geeft:

  1. AAlle rijen uit de linkertabel en de overeenkomende rijen uit de rechtertabel, met NULLs waar er geen overeenkomst is
  2. BAlleen alle rijen uit de rechtertabel
  3. CRijen die in geen van beide tabellen overeenkomen
  4. DAlleen overeenkomende rijen uit beide tabellen
16.Databases & SQLMoeilijk

Welke vensterfunctie kent binnen elke partitie 1, 2, 3, ... toe aan rijen, zonder gelijke standen?

  1. ARANK()
  2. BCOUNT()
  3. CROW_NUMBER()
  4. DDENSE_RANK()
17.ComputernetwerkenGemiddeld

Hoe lang duurt het om een pakket van 1500 bytes op een verbinding van 12 Mbit/s te zetten (transmissievertraging)?

  1. A1 ms
  2. B0,125 ms
  3. C12 ms
  4. D8 ms
18.ComputernetwerkenMoeilijk

Stations A en C bereiken allebei accesspoint B maar horen elkaar niet, zodat hun frames bij B botsen. Hoe helpt 802,11?

  1. ADoor de TTL van de frames te verhogen
  2. BDoor A en C botsingsdetectie te laten gebruiken zodat ze stoppen met zenden als frames overlappen
  3. CDoor de frames van A via C te routeren
  4. DMet optionele RTS/CTS-uitwisselingen: de CTS van het AP laat alle nabije stations wachten
19.IPv4-subnettingGemiddeld
255.255.255.25211111111111111111111111111111100netwerkbitshostbits

Een subnet gebruikt het masker 255.255.255.252. Hoeveel bruikbare hostadressen H heeft het?

255.255.255.252
H =
20.IPv4-subnettingMoeilijk
laatste octet = 140112806403201618140201netwerkhost

Een host heeft het adres 10.20.131.140/25. Wat is het laatste getal (vierde octet) x van het broadcastadres van zijn subnet?

10.20.131.140/25
x =

3Oplossingen

1.Talstelsels

Antwoord: N = −102

Positionele talstelsels: elk cijfer is zijn waarde maal een macht van het grondtal waard. Binair zijn de posities 1, 2, 4, 8, 16, … waard, hexadecimaal 1, 16, 256, …, met A–F voor 10–15. In 8-bits two's complement is het meest linkse bit −128 waard in plaats van +128; zo worden negatieve getallen opgeslagen.

Plaatswaarden optellen

De andere bits houden hun gewone positieve waarde.

−128 + 16 + 8 + 2 = −102

Antwoord

N = −102
2.Talstelsels

Antwoord: b = 9 bit

Positionele talstelsels: elk cijfer is zijn waarde maal een macht van het grondtal waard. Binair zijn de posities 1, 2, 4, 8, 16, … waard, hexadecimaal 1, 16, 256, …, met A–F voor 10–15. In 8-bits two's complement is het meest linkse bit −128 waard in plaats van +128; zo worden negatieve getallen opgeslagen.

Machten van twee

28 = 256 < 310
29 = 512 ≥ 310

Antwoord

b = 9
3.Propositielogica & bewijzen

Antwoord: N = 7

Waarheidstabellen: een formule met n verschillende variabelen heeft 2ⁿ rijen, één voor elke combinatie van waarheidswaarden (1 = waar, 0 = onwaar). Werk van binnen naar buiten en geef elke deelformule een eigen kolom. ¬a draait de waarde om; a ∧ b is alleen 1 als beide 1 zijn; a ∨ b is alleen 0 als beide 0 zijn; a → b is alleen 0 als a = 1 en b = 0; a ↔ b is 1 als beide kanten gelijk zijn.

Waarheidstabel rij voor rij

a = 1, b = 1, c = 1: c → a = 1, c ∧ (c → a) = 1, a → b = 1, (c ∧ (c → a)) ∨ (a → b) = 1
a = 1, b = 1, c = 0: c → a = 1, c ∧ (c → a) = 0, a → b = 1, (c ∧ (c → a)) ∨ (a → b) = 1
a = 1, b = 0, c = 1: c → a = 1, c ∧ (c → a) = 1, a → b = 0, (c ∧ (c → a)) ∨ (a → b) = 1
a = 1, b = 0, c = 0: c → a = 1, c ∧ (c → a) = 0, a → b = 0, (c ∧ (c → a)) ∨ (a → b) = 0
a = 0, b = 1, c = 1: c → a = 0, c ∧ (c → a) = 0, a → b = 1, (c ∧ (c → a)) ∨ (a → b) = 1
a = 0, b = 1, c = 0: c → a = 1, c ∧ (c → a) = 0, a → b = 1, (c ∧ (c → a)) ∨ (a → b) = 1
a = 0, b = 0, c = 1: c → a = 0, c ∧ (c → a) = 0, a → b = 1, (c ∧ (c → a)) ∨ (a → b) = 1
a = 0, b = 0, c = 0: c → a = 1, c ∧ (c → a) = 0, a → b = 1, (c ∧ (c → a)) ∨ (a → b) = 1

Tel de rijen met waarde 1

(c ∧ (c → a)) ∨ (a → b): 1, 1, 1, 0, 1, 1, 1, 1
N = 7

Antwoord

N = 7
4.Propositielogica & bewijzen

Antwoord: r ∨ p

Kwantoren en redeneringen: ¬∀x P(x) ≡ ∃x ¬P(x) en ¬∃x P(x) ≡ ∀x ¬P(x). Schuif een ontkenning naar binnen, verwissel elke kwantor die ze passeert en ontken de binnenste formule met de propositiewetten, zoals ¬(a → b) ≡ a ∧ ¬b. Een redenering is geldig als de conclusie 1 is in elke rij waarin alle premissen 1 zijn. Eén rij met ware premissen en een onware conclusie is een tegenvoorbeeld en toont aan dat de redenering ongeldig is.

Rijen met alle premissen waar

p = 1, q = 1, r = 1: ¬r = 0, r ∨ p = 1, q ∨ p = 1, r ∧ p = 1
p = 1, q = 1, r = 0: ¬r = 1, r ∨ p = 1, q ∨ p = 1, r ∧ p = 0
p = 1, q = 0, r = 1: ¬r = 0, r ∨ p = 1, q ∨ p = 1, r ∧ p = 1
p = 0, q = 0, r = 1: ¬r = 0, r ∨ p = 1, q ∨ p = 0, r ∧ p = 0

Conclusie

r ∨ p (resolutie)

Antwoord

r ∨ p
5.Digitale logica: poorten, K-kaarten & flip-flops

Antwoord: AB = 10, CD = 00

Karnaugh-kaarten: de cellen staan in Gray-code (00, 01, 11, 10), dus naburige cellen, ook die over de randen heen, verschillen in precies één variabele. Groepeer de enen in rechthoeken van 1, 2, 4, 8 of 16 cellen, zo groot en zo weinig mogelijk, totdat elke 1 gedekt is. Elke groep is één productterm: de variabelen die erin constant blijven. Een groep van 2ᵏ cellen verliest k variabelen. Don’t-cares (X) mogen worden gebruikt om groepen groter te maken maar hoeven nooit gedekt te worden. Groepeer je in plaats daarvan de nullen, dan krijg je de minimale POS-vorm.

Buren van elke 1

Een 1 met een naburige 1 kan deel uitmaken van een groep van twee of meer.

m8: m9, m10, m12, m0 → 0
ABCD00011110000111101111111

De geïsoleerde 1

m8 = AB′C′D′ → AB = 10, CD = 00

Antwoord

AB = 10, CD = 00
6.Digitale logica: poorten, K-kaarten & flip-flops

Antwoord: L = 9

Karnaugh-kaarten: de cellen staan in Gray-code (00, 01, 11, 10), dus naburige cellen, ook die over de randen heen, verschillen in precies één variabele. Groepeer de enen in rechthoeken van 1, 2, 4, 8 of 16 cellen, zo groot en zo weinig mogelijk, totdat elke 1 gedekt is. Elke groep is één productterm: de variabelen die erin constant blijven. Een groep van 2ᵏ cellen verliest k variabelen. Don’t-cares (X) mogen worden gebruikt om groepen groter te maken maar hoeven nooit gedekt te worden. Groepeer je in plaats daarvan de nullen, dan krijg je de minimale POS-vorm.

Priemimplicanten

De grootste groepen die uit enen en X’en gevormd kunnen worden.

B′C, AD′, AC, AB, A′B′D
ABCD00011110000111100011X31204050706112X131151141809X11110

Minimale dekking

F = B′C + AD′ + AC + A′B′D
L = 9

Antwoord

L = 9

Er bestaat een andere groepering van dezelfde grootte; die heeft hetzelfde aantal termen en literals.

7.Getaltheorie & modulair rekenen

Antwoord: x = 43

Inversen en congruenties: a heeft een inverse modulo n precies als ggd(a, n) = 1. Het uitgebreide algoritme van Euclides schrijft 1 = s·n + t·a, en dan is a⁻¹ ≡ t (mod n). Een congruentie a·x ≡ b (mod n) met ggd(a, n) = 1 heeft de oplossing x ≡ a⁻¹·b. Twee congruenties x ≡ r₁ (mod m₁) en x ≡ r₂ (mod m₂) met onderling ondeelbare moduli hebben één oplossing modulo m₁·m₂ (Chinese reststelling). Eulers φ(n) telt de getallen van 1 tot n die onderling ondeelbaar zijn met n: φ(n) = n·∏(1 − 1/p).

Eerste congruentie

x = 1 + 7k

Tweede congruentie

1 + 7k ≡ 4 (mod 13) → 7k ≡ 3 (mod 13)
k ≡ 2·3 ≡ 6 (mod 13)

Resultaat

x = 1 + 7·6 = 43
x = 43
controle: 43 mod 7 = 1, 43 mod 13 = 4

Antwoord

x = 43
8.Getaltheorie & modulair rekenen

Antwoord: d = 173

Modulaire machten en RSA: bereken aᵏ mod n door herhaald kwadrateren: schrijf k binair, kwadrateer, reduceer na elke stap en vermenigvuldig de machten waarvan de bit 1 is. Fermat: aᵖ⁻¹ ≡ 1 (mod p) voor een priemgetal p dat a niet deelt, dus de exponent kan modulo p − 1 gereduceerd worden. RSA: kies priemgetallen p en q, n = p·q en φ(n) = (p − 1)(q − 1); de publieke exponent e is onderling ondeelbaar met φ(n), en de privé-exponent is d = e⁻¹ mod φ(n). Versleutel met c = mᵉ mod n en ontsleutel met m = cᵈ mod n.

Modulus en φ-waarde

n = 11·43 = 473
φ(n) = 10·42 = 420

Uitgebreid algoritme van Euclides

r = 420, t = 0
r = 17, q = 24, t = 1
r = 12, q = 1, t = −24
r = 5, q = 2, t = 25
r = 2, q = 2, t = −74
r = 1, q = 2, t = 173

Privé-exponent

d = 173
controle: 17·173 = 2941 = 7·420 + 1

Antwoord

d = 173
9.Algoritmen & complexiteit

Antwoord: C · De gemiddelde kosten per bewerking over een worst-casereeks van bewerkingen

Waarom dit het antwoord is

Geamortiseerde analyse spreidt de kosten van zeldzame dure bewerkingen over veel goedkope, wat een gegarandeerd gemiddelde geeft voor elke reeks.

Antwoord

C · De gemiddelde kosten per bewerking over een worst-casereeks van bewerkingen
10.Algoritmen & complexiteit

Antwoord: A · Elk probleem in P zit ook in NP

Waarom dit het antwoord is

P ⊆ NP: als je een probleem snel kunt oplossen, kun je een oplossing ook snel verifiëren. Of P = NP is nog een open vraag.

Antwoord

A · Elk probleem in P zit ook in NP
11.Datastructuren

Antwoord: C · De code vereenvoudigen door speciale gevallen aan kop of staart weg te nemen

Waarom dit het antwoord is

Met een sentinel heeft elke echte knoop een voorganger, dus invoegen of verwijderen aan de kop vraagt geen speciale behandeling.

Antwoord

C · De code vereenvoudigen door speciale gevallen aan kop of staart weg te nemen
12.Datastructuren

Antwoord: C · Een max-heap van grootte k, waarvan je de wortel vervangt als er een kleinere waarde binnenkomt

Waarom dit het antwoord is

De wortel van de max-heap is de grootste bewaarde waarde; elke kleinere nieuwe waarde vervangt die in O(log k), zodat de heap altijd de k kleinste tot nu toe bevat.

Antwoord

C · Een max-heap van grootte k, waarvan je de wortel vervangt als er een kleinere waarde binnenkomt
13.Grafentheorie

Antwoord: L = 18

Euler, Hamilton en bomen: een samenhangende graaf heeft een Eulercircuit (elke kant één keer, terug naar het begin) als elk hoekpunt even graad heeft, en een Eulerpad dat geen circuit is als precies twee hoekpunten oneven graad hebben; het pad loopt dan van het ene oneven hoekpunt naar het andere. Een Hamiltoncircuit bezoekt elk hoekpunt één keer; Kn heeft er (n − 1)!/2. Een boom op n hoekpunten heeft n − 1 kanten, en een samenhangende graaf met m kanten houdt een opspannende boom over na het verwijderen van m − n + 1 kanten.

Handenschudlemma voor een boom

L + 32 = 2(L + 8) − 2
L = 18

Antwoord

L = 18

Snelle methode: L = 2 + Σ (d − 2) over de hoekpunten met graad d ≥ 3.

14.Grafentheorie

Antwoord: G

Kortste paden en opspannende bomen: het algoritme van Dijkstra legt per ronde één hoekpunt vast: het onafgehandelde hoekpunt met de kleinste voorlopige afstand. Zijn afstand is dan definitief, en elke buur v krijgt d(v) = min(d(v), d(u) + w(u, v)). Het algoritme van Kruskal bouwt een minimaal opspannende boom door de kanten van licht naar zwaar te nemen en elke kant over te slaan die een cykel zou sluiten; het algoritme van Prim laat één boom groeien vanuit een beginpunt door steeds de lichtste kant toe te voegen die eruit vertrekt. Een opspannende boom van n hoekpunten heeft n − 1 kanten.

Dijkstra ronde voor ronde

1. A (0): B: 11, C: 8
2. C (8): B: 10, E: 12, G: 20
3. B (10): G: 16
4. E (12): D: 16, F: 20, G: 14
5. G (14)
6. D (16)
7. F (20)

ronde 5

G

Antwoord

G
15.Databases & SQL

Antwoord: A · Alle rijen uit de linkertabel en de overeenkomende rijen uit de rechtertabel, met NULLs waar er geen overeenkomst is

Waarom dit het antwoord is

Een left outer join behoudt elke linkerrij; rechterkolommen zonder overeenkomst worden met NULL gevuld.

Antwoord

A · Alle rijen uit de linkertabel en de overeenkomende rijen uit de rechtertabel, met NULLs waar er geen overeenkomst is
16.Databases & SQL

Antwoord: C · ROW_NUMBER()

Waarom dit het antwoord is

ROW_NUMBER geeft unieke opeenvolgende nummers; RANK laat gaten na gelijke standen; DENSE_RANK niet.

Antwoord

C · ROW_NUMBER()
17.Computernetwerken

Antwoord: A · 1 ms

Waarom dit het antwoord is

1500 bytes = 12,000 bits. 12,000 / 12,000,000 bit/s = 0,001 s = 1 ms. Transmissievertraging hangt af van pakketgrootte en verbindingssnelheid, niet van afstand.

Antwoord

A · 1 ms
18.Computernetwerken

Antwoord: D · Met optionele RTS/CTS-uitwisselingen: de CTS van het AP laat alle nabije stations wachten

Waarom dit het antwoord is

Een station stuurt Request to Send; het AP antwoordt met Clear to Send, dat elk station binnen zijn bereik hoort, zodat verborgen stations de gereserveerde tijd wachten.

Antwoord

D · Met optionele RTS/CTS-uitwisselingen: de CTS van het AP laat alle nabije stations wachten
19.IPv4-subnetting

Antwoord: H = 2

IPv4 subnetting: an address has 32 bits. The prefix /p says how many leading bits identify the network; the remaining 32 − p bits number the hosts. A subnet has 2³²⁻ᵖ addresses, but the first (network address) and last (broadcast address) cannot be given to hosts, so 2³²⁻ᵖ − 2 hosts fit. Exceptions: a /31 (point-to-point link, RFC 3021) uses both of its 2 addresses for hosts, and a /32 is one single address (a single host or a loopback).

Prefixlengte

255.255.255.252 = /30

Bruikbare hosts

22 − 2 = 2

Antwoord

H = 2
20.IPv4-subnetting

Antwoord: x = 255

IPv4-subnetting: een adres heeft 32 bits. Het prefix /p geeft aan hoeveel voorste bits het netwerk aanduiden; de overige 32 − p bits nummeren de hosts. Een subnet heeft 2³²⁻ᵖ adressen, maar het eerste (netwerkadres) en het laatste (broadcastadres) kunnen niet aan hosts worden gegeven, dus er passen 2³²⁻ᵖ − 2 hosts in. Uitzonderingen: een /31 (point-to-pointverbinding, RFC 3021) gebruikt allebei zijn 2 adressen voor hosts, en een /32 is één enkel adres (één host of een loopback).

Blokgrootte

27 = 128

Subnet van deze host

netwerk: ⌊140/128⌋·128 = 128
broadcast: 128 + 128 − 1 = 255
bruikbare hosts: 129 … 254

Antwoord

x = 255

ExamProblems · examproblems.com/courses/computer-science-fundamentals