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−12816413201608041201

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

1110 00108 bit
N =
2.TalstelselsMoeilijk
klik op de bits om ze in te stellen012806403201608040201

Stel de bits in op het 8-bits resultaat van 1111 0010 >> 1. Wat is de waarde R van het resultaat in decimaal?

1111 0010>> 1
R =
3.Propositielogica & bewijzenGemiddeld
pqr¬p → q(¬p → q) ↔ r(¬q ∨ (r → ¬p)) ∧ ((¬p → q) ↔ r)111?110?101?100?011?010?001?000?

In hoeveel van de 8 rijen van zijn waarheidstabel is (¬q ∨ (r → ¬p)) ∧ ((¬p → q) ↔ r) waar? Noem dit aantal N.

(¬q ∨ (r → ¬p)) ∧ ((¬p → q) ↔ r)
N =
4.Propositielogica & bewijzenMoeilijk
q ∨ pq ∧ p¬qr ∨ p

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

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

Gebruik de Karnaugh-kaart om de minimale som-van-productenvorm (SOP) van F(A, B, C) = Σm(3, 4, 5, 6, 7) te vinden. Hoeveel literals L bevat die in totaal (een variabele met accent telt als één literal)?

F(A, B, C) = Σm(3, 4, 5, 6, 7)
L =
6.Digitale logica: poorten, K-kaarten & flip-flopsMoeilijk
TQ0​Q0​TQ1​Q1​TQ2​Q2​TQ3​Q3​CLKMOD-11

Een synchrone mod-11-teller telt 0, 1, …, 10 en keert dan terug naar 0. Hij begint bij 10. Welke stand Q (decimaal) toont hij na 18 klokpulsen?

Q0 = 1018N = 11
Q =
7.Getaltheorie & modulair rekenenGemiddeld

Vind de inverse van 38 modulo 53: het getal x met 0 < x < 53 en 38·x ≡ 1 (mod 53).

a = 38n = 53
38−1 mod 53 =
8.Getaltheorie & modulair rekenenMoeilijk

Hoeveel oplossingen N heeft 20x ≡ 10 (mod 30) in {0, 1, …, 29}?

20x ≡ 10 (mod 30)
N =
9.Algoritmen & complexiteitGemiddeld

Quicksort gebruikt altijd het eerste element als pivot. Bij welke invoer vertoont het zijn worst-casegedrag?

  1. AEen array die al gesorteerd is
  2. BEen array in willekeurige volgorde
  3. CEen array van lengte 2
  4. DEen array waarvan alle elementen verschillend zijn
10.Algoritmen & complexiteitMoeilijk

Hoe detecteert het algoritme van Bellman-Ford een cykel met negatief gewicht die vanuit de bron bereikbaar is?

  1. ANa V − 1 rondes controleert het of er nog een kant kan worden gerelaxeerd
  2. BHet telt de cykels met diepte-eerst zoeken
  3. CHet voert het algoritme van Dijkstra twee keer uit en vergelijkt de twee afstandsresultaten
  4. DHet controleert of er een kant met negatief gewicht is
11.DatastructurenGemiddeld

Een applicatie heeft snel opzoeken nodig en moet ook sleutels gesorteerd kunnen opsommen en bereikquery's beantwoorden. Welke structuur past het best?

  1. AEen gebalanceerde binaire zoekboom
  2. BEen stack
  3. CEen ongesorteerde gekoppelde lijst
  4. DEen hashtabel
12.DatastructurenMoeilijk

Aan welke regel moeten hash en gelijkheid voldoen om een hashtabel correct te laten werken?

  1. AVerschillende sleutels moeten verschillende hashwaarden hebben
  2. BGelijke hashwaarden impliceren gelijke sleutels
  3. CHashwaarden moeten priemgetallen zijn
  4. DGelijke sleutels moeten gelijke hashwaarden hebben
13.GrafentheorieGemiddeld

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

4 × deg 43 × deg 53 × deg 2
L =
14.GrafentheorieMoeilijk
784143899ABCDEF

Gebruik het algoritme van Dijkstra om de lengte d(F) van het kortste pad van A naar F in de gewogen graaf te vinden.

start: Aeinde: F
d(F) =
15.Databases & SQLGemiddeld

Wat is SQL-injectie?

  1. AEen manier om indexen toe te voegen
  2. BEen aanval waarbij gebruikersinvoer de structuur van een SQL-query verandert
  3. CEen techniek voor databaseback-ups
  4. DEen methode om met één INSERT-instructie snel veel rijen in te voegen
16.Databases & SQLMoeilijk

Waarom is SELECT dept, name, COUNT(*) FROM emp GROUP BY dept ongeldig in standaard-SQL?

  1. Aname is niet gegroepeerd en niet geaggregeerd, dus het heeft geen enkele waarde per groep
  2. Bdept moet binnen een aggregatiefunctie staan
  3. CGROUP BY moet alle kolommen van de tabel opsommen
  4. DCOUNT(*) kan niet samen met GROUP BY worden gebruikt
17.ComputernetwerkenGemiddeld

Een signaal legt 2000 km door glasvezel af met ongeveer 2 × 10⁸ m/s. Wat is de propagatievertraging?

  1. A1 ms
  2. B10 ms
  3. C0,1 ms
  4. D100 ms
18.ComputernetwerkenMoeilijk

Head-of-line blocking bij HTTP/2 over TCP ontstaat doordat:

  1. AEen verloren TCP-segment alle gemultiplexte streams vertraagt totdat het opnieuw is verzonden
  2. BHTTP/2 UDP gebruikt
  3. CElk verzoek een eigen nieuwe TCP-verbinding nodig heeft, zodat latere verzoeken in een wachtrij wachten
  4. DServers geen parallelle verzoeken kunnen afhandelen
19.IPv4-subnettingGemiddeld
/?11111111111111111111110000000000netwerkbitshostbits

Een afdeling heeft 909 hostadressen nodig in één subnet. Wat is de langste prefixlengte p (kleinste subnet) die groot genoeg is?

909 hosts
p =
20.IPv4-subnettingMoeilijk
laatste octet = 122012816413211618041201netwerkhost

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

10.20.20.122/29
x =

3Oplossingen

1.Talstelsels

Antwoord: N = −30

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 + 64 + 32 + 2 = −30

Antwoord

N = −30
2.Talstelsels

Antwoord: R = 121

Bits instellen: elke bit is een macht van twee waard (128, 64, …, 1). Eén hexadecimaal cijfer is precies vier bits, en in 8-bits tweecomplement is de meest linkse bit −128 waard. Bitsgewijze bewerkingen werken op elke bitpositie apart.

Bit voor bit

Naar rechts schuiven met 1 verplaatst elke bit 1 plaatsen naar rechts; bits die rechts uit beeld vallen gaan verloren en links komen nullen binnen.

1111 0010 >> 1
= 0111 1001

Waarde van het resultaat

0111 1001₂ = 121

Antwoord

R = 121
3.Propositielogica & bewijzen

Antwoord: N = 3

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

p = 1, q = 1, r = 1: ¬q = 0, ¬p = 0, r → ¬p = 0, ¬q ∨ (r → ¬p) = 0, ¬p → q = 1, (¬p → q) ↔ r = 1, (¬q ∨ (r → ¬p)) ∧ ((¬p → q) ↔ r) = 0
p = 1, q = 1, r = 0: ¬q = 0, ¬p = 0, r → ¬p = 1, ¬q ∨ (r → ¬p) = 1, ¬p → q = 1, (¬p → q) ↔ r = 0, (¬q ∨ (r → ¬p)) ∧ ((¬p → q) ↔ r) = 0
p = 1, q = 0, r = 1: ¬q = 1, ¬p = 0, r → ¬p = 0, ¬q ∨ (r → ¬p) = 1, ¬p → q = 1, (¬p → q) ↔ r = 1, (¬q ∨ (r → ¬p)) ∧ ((¬p → q) ↔ r) = 1
p = 1, q = 0, r = 0: ¬q = 1, ¬p = 0, r → ¬p = 1, ¬q ∨ (r → ¬p) = 1, ¬p → q = 1, (¬p → q) ↔ r = 0, (¬q ∨ (r → ¬p)) ∧ ((¬p → q) ↔ r) = 0
p = 0, q = 1, r = 1: ¬q = 0, ¬p = 1, r → ¬p = 1, ¬q ∨ (r → ¬p) = 1, ¬p → q = 1, (¬p → q) ↔ r = 1, (¬q ∨ (r → ¬p)) ∧ ((¬p → q) ↔ r) = 1
p = 0, q = 1, r = 0: ¬q = 0, ¬p = 1, r → ¬p = 1, ¬q ∨ (r → ¬p) = 1, ¬p → q = 1, (¬p → q) ↔ r = 0, (¬q ∨ (r → ¬p)) ∧ ((¬p → q) ↔ r) = 0
p = 0, q = 0, r = 1: ¬q = 1, ¬p = 1, r → ¬p = 1, ¬q ∨ (r → ¬p) = 1, ¬p → q = 0, (¬p → q) ↔ r = 0, (¬q ∨ (r → ¬p)) ∧ ((¬p → q) ↔ r) = 0
p = 0, q = 0, r = 0: ¬q = 1, ¬p = 1, r → ¬p = 1, ¬q ∨ (r → ¬p) = 1, ¬p → q = 0, (¬p → q) ↔ r = 1, (¬q ∨ (r → ¬p)) ∧ ((¬p → q) ↔ r) = 1

Tel de rijen met waarde 1

(¬q ∨ (r → ¬p)) ∧ ((¬p → q) ↔ r): 0, 0, 1, 0, 1, 0, 0, 1
N = 3

Antwoord

N = 3
4.Propositielogica & bewijzen

Antwoord: q ∨ 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: q ∨ p = 1, q ∧ p = 1, ¬q = 0, r ∨ p = 1
p = 1, q = 1, r = 0: q ∨ p = 1, q ∧ p = 1, ¬q = 0, r ∨ p = 1
p = 1, q = 0, r = 1: q ∨ p = 1, q ∧ p = 0, ¬q = 1, r ∨ p = 1
p = 0, q = 1, r = 0: q ∨ p = 1, q ∧ p = 0, ¬q = 0, r ∨ p = 0

Conclusie

q ∨ p (resolutie)

Antwoord

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

Antwoord: L = 3

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.

ABC00011110010001130214151716

Groepeer de enen

Elke groep is een rechthoek van 2ᵏ cellen; randcellen zijn buren van de cellen op de tegenoverliggende rand.

BC
A

Minimale SOP-vorm

F = BC + A
L = 3

Antwoord

L = 3
6.Digitale logica: poorten, K-kaarten & flip-flops

Antwoord: Q = 6

Flip-flops en tellers: een flip-flop verandert alleen op de actieve klokflank. D kopieert zijn ingang (Q⁺ = D); T wisselt als T = 1; JK houdt vast bij 00, reset bij 01, zet bij 10 en wisselt bij 11. Een n-bits binaire teller heeft 2ⁿ toestanden en telt modulo 2ⁿ; een mod-N-teller telt 0, 1, …, N − 1 en dan weer 0, en heeft de kleinste n met 2ⁿ ≥ N flip-flops nodig. Elke trap van een ripple-teller halveert de frequentie, dus de laatste uitgang van een mod-N-teller loopt op fklok/N. Een Johnson-teller van n flip-flops heeft 2n toestanden, een ringteller n.

Volledige cycli

Elke 11 pulsen brengen de teller terug in dezelfde toestand.

18 = 1·11 + 7

Stand na de resterende pulsen

Q = (10 + 7) mod 11 = 6
Q = 0110₂

Antwoord

Q = 6
7.Getaltheorie & modulair rekenen

Antwoord: 38−1 mod 53 = 7

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).

Uitgebreid algoritme van Euclides

Elke rest r wordt geschreven als r ≡ t·38 (mod 53).

r = 53, t = 0
r = 38, q = 1, t = 1
r = 15, q = 2, t = −1
r = 8, q = 1, t = 3
r = 7, q = 1, t = −4
r = 1, q = 7, t = 7

Inverse

1 ≡ 7·38 (mod 53)
x = 7
controle: 38·7 = 266 = 5·53 + 1

Antwoord

38−1 mod 53 = 7
8.Getaltheorie & modulair rekenen

Antwoord: N = 10

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).

Deel door de ggd

gcd(20, 30) = 10
2x ≡ 1 (mod 3)

Los de gereduceerde congruentie op

2−1 ≡ 2 (mod 3) → x ≡ 2 (mod 3)

Oplossingen modulo 30

x ∈ {2, 5, 8, 11, 14, 17, 20, 23, 26, 29}
N = 10

Antwoord

N = 10
9.Algoritmen & complexiteit

Antwoord: A · Een array die al gesorteerd is

Waarom dit het antwoord is

Bij gesorteerde invoer is de pivot altijd het minimum, dus de ene kant is leeg en de andere heeft n − 1 elementen, wat O(n²) geeft.

Antwoord

A · Een array die al gesorteerd is
10.Algoritmen & complexiteit

Antwoord: A · Na V − 1 rondes controleert het of er nog een kant kan worden gerelaxeerd

Waarom dit het antwoord is

Alle echte kortste afstanden worden binnen V − 1 rondes gevonden; als een kant dan nog verbeterd kan worden, moet er een negatieve cykel bestaan.

Antwoord

A · Na V − 1 rondes controleert het of er nog een kant kan worden gerelaxeerd
11.Datastructuren

Antwoord: A · Een gebalanceerde binaire zoekboom

Waarom dit het antwoord is

Een gebalanceerde BST geeft opzoeken in O(log n) en houdt sleutels geordend, zodat een inorder-doorloop en bereikquery's eenvoudig zijn; een hashtabel verspreidt sleutels.

Antwoord

A · Een gebalanceerde binaire zoekboom
12.Datastructuren

Antwoord: D · Gelijke sleutels moeten gelijke hashwaarden hebben

Waarom dit het antwoord is

Als twee gelijke sleutels verschillend zouden hashen, zouden ze in verschillende buckets worden opgeslagen en zouden lookups mislukken; ongelijke sleutels mogen wel een hash delen.

Antwoord

D · Gelijke sleutels moeten gelijke hashwaarden hebben
13.Grafentheorie

Antwoord: L = 19

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 + 37 = 2(L + 10) − 2
L = 19

Antwoord

L = 19

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

14.Grafentheorie

Antwoord: d(F) = 19

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

Elke regel: het vastgelegde hoekpunt, zijn definitieve afstand en de buren waarvan de afstand verbetert.

A (0): B: 7
B (7): C: 15, D: 11, E: 16
D (11): E: 14, F: 19
E (14)
C (15)
F (19)

Kortste pad

A → B → D → F
d(F) = 19

Antwoord

d(F) = 19
15.Databases & SQL

Antwoord: B · Een aanval waarbij gebruikersinvoer de structuur van een SQL-query verandert

Waarom dit het antwoord is

Als gebruikersinvoer aan SQL wordt vastgeplakt (concatenatie), kunnen aanvallers commando's injecteren. Prepared statements met parameters houden gegevens gescheiden van code.

Antwoord

B · Een aanval waarbij gebruikersinvoer de structuur van een SQL-query verandert
16.Databases & SQL

Antwoord: A · name is niet gegroepeerd en niet geaggregeerd, dus het heeft geen enkele waarde per groep

Waarom dit het antwoord is

Elke kolom in de SELECT-lijst moet in GROUP BY of binnen een aggregaat staan (of functioneel afhankelijk zijn van de groeperingskolommen); anders is de waarde dubbelzinnig.

Antwoord

A · name is niet gegroepeerd en niet geaggregeerd, dus het heeft geen enkele waarde per groep
17.Computernetwerken

Antwoord: B · 10 ms

Waarom dit het antwoord is

2 × 10⁶ m / 2 × 10⁸ m/s = 0,01 s = 10 ms. Propagatievertraging hangt af van afstand en medium, niet van pakketgrootte.

Antwoord

B · 10 ms
18.Computernetwerken

Antwoord: A · Een verloren TCP-segment alle gemultiplexte streams vertraagt totdat het opnieuw is verzonden

Waarom dit het antwoord is

TCP levert bytes in volgorde af, dus één verlies houdt elke stream op de verbinding op. QUIC (HTTP/3) behandelt streams onafhankelijk van elkaar over UDP.

Antwoord

A · Een verloren TCP-segment alle gemultiplexte streams vertraagt totdat het opnieuw is verzonden
19.IPv4-subnetting

Antwoord: p = 22

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).

Benodigde hostbits

29 − 2 = 510 < 909
210 − 2 = 1022 ≥ 909 → h = 10

Prefixlengte

p = 32 − 10 = 22

Antwoord

p = /22
20.IPv4-subnetting

Antwoord: x = 127

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

23 = 8

Subnet van deze host

netwerk: ⌊122/8⌋·8 = 120
broadcast: 120 + 8 − 1 = 127
bruikbare hosts: 121 … 126

Antwoord

x = 127

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