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
8-bits two's complement?−128?64?32?16?8?4?2?1

Schrijf −105 als 8-bits patroon in two's complement. Lees het patroon als binair getal zonder teken: wat is de waarde U in decimaal?

N = −1058 bit
U =
2.TalstelselsMoeilijk
10-bits tweecomplement, N = ??teken?????????

Wat is het meest negatieve gehele getal N dat in 10-bits two's complement past?

10 bit
N =
3.Propositielogica & bewijzenGemiddeld
pqrp → r(p → r) ∧ r¬(q ∨ p) → ((p → r) ∧ r)111?110?101?100?011?010?001?000?

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

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

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

(p ∨ ¬q) ↔ ¬((r → s) ∨ (¬s ∨ q))
N =
5.Digitale logica: poorten, K-kaarten & flip-flopsGemiddeld
ABC00011110011001030214051716

Gebruik de Karnaugh-kaart om de minimale som-van-productenvorm (SOP) van F(A, B, C) = Σm(0, 4, 6, 7) te vinden. Hoeveel productermen N heeft die?

F(A, B, C) = Σm(0, 4, 6, 7)
N =
6.Digitale logica: poorten, K-kaarten & flip-flopsMoeilijk
ABCD0001111000011110X00103X214051716012113015X14X819111010

Bepaal de minimale SOP-vorm van F(A, B, C, D) = Σm(4, 6, 7, 9, 11, 13) + d(0, 2, 8, 14), waarbij d de don’t-care-condities aangeeft. Hoeveel literals L bevat die?

F(A, B, C, D) = Σm(4, 6, 7, 9, 11, 13) + d(0, 2, 8, 14)
L =
7.Getaltheorie & modulair rekenenGemiddeld

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

a = 5n = 33
5−1 mod 33 =
8.Getaltheorie & modulair rekenenMoeilijk
mc = me​ mod n232m = cd​ mod n?(n, e) = (403, 13)d

Een RSA-sleutel gebruikt p = 13, q = 31 en e = 13. Ontsleutel de cijfertekst c = 232: bepaal het bericht m.

p = 13q = 31e = 13c = 232
m =
9.Algoritmen & complexiteitGemiddeld

Dynamisch programmeren is nuttig wanneer een probleem het volgende heeft:

  1. AAlleen willekeurige invoer
  2. BOverlappende deelproblemen en optimale substructuur
  3. CEén enkele lus
  4. DHelemaal geen deelproblemen, dus het kan in één stap worden opgelost
10.Algoritmen & complexiteitMoeilijk

Welke definitie van de klasse NP is juist?

  1. AProblemen die niet polynomiaal zijn
  2. BProblemen die geen enkel algoritme kan oplossen
  3. CProblemen die niet in polynomiale tijd kunnen worden opgelost
  4. DBeslissingsproblemen waarvan ja-antwoorden met een certificaat in polynomiale tijd kunnen worden geverifieerd
11.DatastructurenGemiddeld

Hoe wordt een nieuw element in een binaire heap ingevoegd?

  1. APlaats het in de wortel en laat het omlaag zakken (sift down)
  2. BBouw de hele heap opnieuw op
  3. CPlaats het aan het eind van de array en laat het omhoog zakken (sift up) zolang het de heap-eigenschap schendt
  4. DVoeg het op de gesorteerde positie in door alle grotere elementen één plaats naar rechts te verschuiven
12.DatastructurenMoeilijk

Door het invoegen van een sleutel in een AVL-boom wordt de linkersubboom van een knoop te hoog, en de nieuwe sleutel kwam in de linkersubboom van zijn linkerkind (left-left-geval). Welke correctie wordt toegepast?

  1. AHet opnieuw kleuren van de knoop en zijn kind
  2. BEen enkele linksrotatie bij de ongebalanceerde knoop
  3. CEen linksrotatie bij het kind, dan een rechtsrotatie bij de knoop
  4. DEen enkele rechtsrotatie bij de ongebalanceerde knoop
13.GrafentheorieGemiddeld

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

3 × deg 32 × deg 43 × deg 2
L =
14.GrafentheorieMoeilijk
12591595103ABCDEFG

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

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

Welke query geeft het hoogste salaris per afdeling?

  1. ASELECT dept, salary FROM emp WHERE salary = MAX(salary)
  2. BSELECT dept, MAX(salary) FROM emp GROUP BY dept
  3. CSELECT dept, MAX(salary) FROM emp ORDER BY dept
  4. DSELECT MAX(dept), salary FROM emp GROUP BY salary
16.Databases & SQLMoeilijk

Een tabel heeft een miljoen rijen en een Booleaanse kolom is_active die voor 95% ervan TRUE is. Waarom kan de optimizer een index op is_active negeren voor WHERE is_active = TRUE?

  1. AOp Booleaanse kolommen kunnen geen indexen worden gemaakt
  2. BDe optimizer gebruikt nooit indexen in WHERE-clausules
  3. CDe meeste rijen voldoen, dus een volledige tabelscan is goedkoper dan veel index-lookups
  4. DTRUE wordt door de index als NULL behandeld
17.ComputernetwerkenGemiddeld

Welk subnetmasker hoort bij /20?

  1. A255.255.248.0
  2. B255.255.224.0
  3. C255.255.255.240
  4. D255.255.240.0
18.ComputernetwerkenMoeilijk

Welk mechanisme voorkomt broadcastlussen in een netwerk met redundante switchverbindingen?

  1. ADHCP snooping
  2. BARP-caching
  3. CSpanning Tree Protocol
  4. DNAT
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 = 31012806403211618141211netwerkhost

Een host heeft het adres 10.20.126.31/28. Wat is het vierde octet x van zijn netwerkadres?

10.20.126.31/28
x =

3Oplossingen

1.Talstelsels

Antwoord: U = 151

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.

Omkeren en één optellen

105 = 0110 1001
omgekeerd: 1001 0110
+1 → 1001 0111

Lezen zonder teken

1001 0111₂ = 256 − 105 = 151

Antwoord

U = 151
2.Talstelsels

Antwoord: N = −512

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.

Meest negatieve waarde

−29 = −512

Antwoord

N = −512
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

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

Tel de rijen met waarde 1

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

Antwoord

N = 7
4.Propositielogica & bewijzen

Antwoord: N = 4

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.

Kolommen

¬q; p ∨ ¬q; r → s; ¬s; ¬s ∨ q; (r → s) ∨ (¬s ∨ q); ¬((r → s) ∨ (¬s ∨ q)); (p ∨ ¬q) ↔ ¬((r → s) ∨ (¬s ∨ q))

Splits op p

p = 1: 0
p = 0: 4
N = 0 + 4 = 4

Antwoord

N = 4
5.Digitale logica: poorten, K-kaarten & flip-flops

Antwoord: N = 2

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.

ABC00011110011001030214051716

Groepeer de enen

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

B′C′
AB

Minimale SOP-vorm

F = B′C′ + AB
N = 2

Antwoord

N = 2
6.Digitale logica: poorten, K-kaarten & flip-flops

Antwoord: L = 11

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.

BCD′, A′D′, AC′D, AB′D, A′BC, AB′C′
ABCD0001111000011110X00103X214051716012113015X14X819111010

Minimale dekking

F = A′D′ + AC′D + AB′D + A′BC
L = 11

Antwoord

L = 11
7.Getaltheorie & modulair rekenen

Antwoord: 5−1 mod 33 = 20

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·5 (mod 33).

r = 33, t = 0
r = 5, q = 6, t = 1
r = 3, q = 1, t = −6
r = 2, q = 1, t = 7
r = 1, q = 2, t = −13

Inverse

1 ≡ −13·5 (mod 33)
x = 20
controle: 5·20 = 100 = 3·33 + 1

Antwoord

5−1 mod 33 = 20
8.Getaltheorie & modulair rekenen

Antwoord: m = 271

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.

Privé-exponent

n = 403, φ(n) = 360
d = 13−1 mod 360 = 277

Ontsleutel met herhaald kwadrateren

277 = 256 + 16 + 4 + 1
2321 ≡ 232 (mod 403)
2322 ≡ 225 (mod 403)
2324 ≡ 250 (mod 403)
2328 ≡ 35 (mod 403)
23216 ≡ 16 (mod 403)
23232 ≡ 256 (mod 403)
23264 ≡ 250 (mod 403)
232128 ≡ 35 (mod 403)
232256 ≡ 16 (mod 403)
232277 ≡ 232·250·16·16 ≡ 271 (mod 403)

Bericht

m = 271
controle: 27113 mod 403 = 232

Antwoord

m = 271
9.Algoritmen & complexiteit

Antwoord: B · Overlappende deelproblemen en optimale substructuur

Waarom dit het antwoord is

Het opslaan van resultaten van overlappende deelproblemen (memoisatie of tabulatie) voorkomt herhaald werk en maakt van exponentiële algoritmen polynomiale.

Antwoord

B · Overlappende deelproblemen en optimale substructuur
10.Algoritmen & complexiteit

Antwoord: D · Beslissingsproblemen waarvan ja-antwoorden met een certificaat in polynomiale tijd kunnen worden geverifieerd

Waarom dit het antwoord is

Bij een NP-probleem kan een voorgestelde oplossing (certificaat) snel worden gecontroleerd, bijvoorbeeld verifiëren dat een gegeven toekenning een booleaanse formule vervult.

Antwoord

D · Beslissingsproblemen waarvan ja-antwoorden met een certificaat in polynomiale tijd kunnen worden geverifieerd
11.Datastructuren

Antwoord: C · Plaats het aan het eind van de array en laat het omhoog zakken (sift up) zolang het de heap-eigenschap schendt

Waarom dit het antwoord is

Toevoegen aan het eind houdt de boom compleet; verwisselen met de ouder herstelt de ordening in O(log n) stappen.

Antwoord

C · Plaats het aan het eind van de array en laat het omhoog zakken (sift up) zolang het de heap-eigenschap schendt
12.Datastructuren

Antwoord: D · Een enkele rechtsrotatie bij de ongebalanceerde knoop

Waarom dit het antwoord is

In het left-left-geval tilt één rechtsrotatie het linkerkind omhoog en herstelt de balans; zigzaggevallen vereisen een dubbele rotatie.

Antwoord

D · Een enkele rechtsrotatie bij de ongebalanceerde knoop
13.Grafentheorie

Antwoord: L = 9

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 + 23 = 2(L + 8) − 2
L = 9

Antwoord

L = 9

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

14.Grafentheorie

Antwoord: d(E) = 13

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): C: 12
C (12): B: 17, E: 13, G: 17
E (13): F: 22, G: 16
G (16): D: 26
B (17)
F (22)
D (26)

Kortste pad

A → C → E
d(E) = 13

Antwoord

d(E) = 13
15.Databases & SQL

Antwoord: B · SELECT dept, MAX(salary) FROM emp GROUP BY dept

Waarom dit het antwoord is

GROUP BY dept maakt een groep per afdeling en MAX(salary) kiest de hoogste waarde in elke groep.

Antwoord

B · SELECT dept, MAX(salary) FROM emp GROUP BY dept
16.Databases & SQL

Antwoord: C · De meeste rijen voldoen, dus een volledige tabelscan is goedkoper dan veel index-lookups

Waarom dit het antwoord is

Een index helpt als hij de zoektocht beperkt tot weinig rijen; als de meeste rijen voldoen, kosten willekeurige index-lookups meer dan de tabel sequentieel lezen.

Antwoord

C · De meeste rijen voldoen, dus een volledige tabelscan is goedkoper dan veel index-lookups
17.Computernetwerken

Antwoord: D · 255.255.240.0

Waarom dit het antwoord is

/20 betekent 8 + 8 + 4 enen. Vier enen in het derde octet zijn 11110000 = 240, dus het masker is 255.255.240.0.

Antwoord

D · 255.255.240.0
18.Computernetwerken

Antwoord: C · Spanning Tree Protocol

Waarom dit het antwoord is

STP kiest een root bridge en blokkeert redundante paden, en deblokkeert ze als een actieve link uitvalt.

Antwoord

C · Spanning Tree Protocol
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 = 16

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

24 = 16

Subnet van deze host

netwerk: ⌊31/16⌋·16 = 16
broadcast: 16 + 16 − 1 = 31
bruikbare hosts: 17 … 30

Antwoord

x = 16

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