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 complement0−12806403201608040201

Stel de bits zo in dat ze −43 opslaan in 8-bits tweecomplement. Wat is de waarde U van het patroon, gelezen als getal zonder teken?

N = −438 bit
U =
2.TalstelselsMoeilijk
klik op de bits om ze in te stellen012806403201608040201

Stel de bits in op het 8-bits resultaat van 1101 0000 OR 0010 0010. Wat is de waarde R van het resultaat in decimaal?

1101 0000OR0010 0010
R =
3.Propositielogica & bewijzenGemiddeld
pqr¬r¬r ∨ q(p ∨ (p ↔ r)) ∧ (¬r ∨ q)111?110?101?100?011?010?001?000?

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

(p ∨ (p ↔ r)) ∧ (¬r ∨ q)
N =
4.Propositielogica & bewijzenMoeilijk
∃x ∀y ¬R(x, y)∃x ∃y ¬R(x, y)∀x ∃y ¬R(x, y)∀x ∀y ¬R(x, y)

Welke uitspraak is equivalent met ¬∃x ∀y R(x, y), met de ontkenning helemaal naar binnen geschoven? Klik erop.

¬∃x ∀y R(x, y)
  1. 1∃x ∀y ¬R(x, y)
  2. 2∃x ∃y ¬R(x, y)
  3. 3∀x ∃y ¬R(x, y)
  4. 4∀x ∀y ¬R(x, y)
5.Digitale logica: poorten, K-kaarten & flip-flopsGemiddeld
ABCD000111100001111010011312141517160121131150140809011010

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

F(A, B, C, D) = Σm(0, 2, 3, 4, 5, 6, 7, 13, 15)
N =
6.Digitale logica: poorten, K-kaarten & flip-flopsMoeilijk
DQ3​Q3​DQ2​Q2​DQ1​Q1​DQ0​Q0​CLKRING

Een 4-bits ringteller Q₃Q₂Q₁Q₀ begint bij 1001. Bij elke klokflank schuiven de bits één plaats naar rechts (Q₃ → Q₂ → Q₁ → Q₀) en krijgt Q₃ de waarde van Q₀. Geef de toestand Q = Q₃Q₂Q₁Q₀ als decimaal getal na 6 klokflanken.

Q₃Q₂Q₁Q₀ = 10016
Q =
7.Getaltheorie & modulair rekenenGemiddeld

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

a = 4n = 91
4−1 mod 91 =
8.Getaltheorie & modulair rekenenMoeilijk
89c = me​ mod n?m = cd​ mod nm(n, e) = (287, 17)d

Versleutel het bericht m = 89 met de publieke RSA-sleutel (n, e) = (287, 17). Bepaal de cijfertekst c.

n = 287e = 17m = 89
c =
9.Algoritmen & complexiteitGemiddeld

Wat meet geamortiseerde analyse?

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

Voor welke variant van het knapzakprobleem geeft de gulzige regel "neem items in volgorde van waarde per gewicht" altijd een optimaal antwoord?

  1. ADe fractionele knapzak, waarbij items mogen worden opgesplitst
  2. BGeen van beide varianten
  3. CDe 0/1-knapzak, waarbij items altijd in hun geheel moeten worden genomen
  4. DBeide varianten
11.DatastructurenGemiddeld

Hoe werkt extract-min in een binaire min-heap?

  1. AVerplaats het laatste element naar de wortel en laat het omlaag zakken (sift down)
  2. BVerwijder het laatste element van de array
  3. CZoek in alle bladeren naar het nieuwe minimum
  4. DVerwijder de wortel en schuif alle elementen één plaats naar links
12.DatastructurenMoeilijk

Waarom gebruiken databases voor indexen vaak B+-bomen in plaats van gewone B-bomen?

  1. AAlle records staan in gekoppelde bladeren, wat bereikscans efficiënt maakt
  2. BB+-bomen gebruiken binaire interne knopen, wat het aantal schijflezingen vermindert
  3. CB+-bomen hoeven niet gebalanceerd te zijn
  4. DB+-bomen slaan data alleen in de wortel op
13.GrafentheorieGemiddeld
ABCDEFEulercircuitEulerpad, geen circuitgeen van beide

Heeft de samenhangende graaf een Eulercircuit, een Eulerpad dat geen circuit is, of geen van beide? Klik op je antwoord.

|V| = 6|E| = 7
  1. 1Eulercircuit
  2. 2Eulerpad, geen circuit
  3. 3geen van beide
14.GrafentheorieMoeilijk
2041810116167ABCDEF

Het algoritme van Prim bouwt een minimaal opspannende boom vanaf hoekpunt B. Klik op de kant die het toevoegt als kant nummer 2.

start: Bk = 2
  1. 1kant AB
  2. 2kant AC
  3. 3kant BC
  4. 4kant BD
  5. 5kant CE
  6. 6kant DE
  7. 7kant EF
  8. 8kant BE
15.Databases & SQLGemiddeld

Wat is SQL-injectie?

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

Wat berekent SELECT day, SUM(amount) OVER (ORDER BY day) FROM sales?

  1. AHet gemiddelde bedrag per dag
  2. BHet totaal van alle bedragen op elke rij
  3. CEen lopend totaal van amount, geordend op day
  4. DEén rij per dag met alleen het totaal van die dag
17.ComputernetwerkenGemiddeld

Waarom gebruikt Wi-Fi botsingsvermijding (CSMA/CA) in plaats van botsingsdetectie?

  1. ARadiosignalen botsen nooit
  2. BEen draadloos station kan botsingen niet betrouwbaar detecteren terwijl het zendt
  3. CWi-Fi staat maar één apparaat per netwerk toe
  4. DBotsingsdetectie werkt alleen op glasvezelkabels, niet op gedeelde draadloze radiokanalen
18.ComputernetwerkenMoeilijk

Hoe verbetert een content delivery network (CDN) vooral de webprestaties?

  1. AHet levert gecachte content vanaf servers dicht bij de gebruikers
  2. BHet vervangt TCP door een sneller transportprotocol
  3. CHet maakt DNS-lookups overbodig
  4. DHet verhoogt de bandbreedte van de eigen thuisverbindingen van gebruikers
19.IPv4-subnettingGemiddeld
/24 → /2511111111111111111111111110000000netwerkbitshostbits

Het netwerk 192.168.56.0/24 wordt verdeeld in /25-subnetten, genummerd 1, 2, 3, … vanaf het laagste adres (subnet 1 begint bij .0). Wat is het vierde octet x van het broadcastadres van subnet 2?

192.168.56.0/24/25subnet 2 (subnet 1 begint bij .0)
x =
20.IPv4-subnettingMoeilijk
laatste octet = 245112816413211608140211netwerkhost

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

10.20.241.245/25
x =

3Oplossingen

1.Talstelsels

Antwoord: U = 213

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.

Omkeren en één optellen

43 = 0010 1011
omgekeerd: 1101 0100
+1 → 1101 0101

Lezen zonder teken

1101 0101₂ = 256 − 43 = 213

Antwoord

U = 213
2.Talstelsels

Antwoord: R = 242

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

OR geeft 1 waar minstens één bit 1 is.

1101 0000
OR 0010 0010
= 1111 0010

Waarde van het resultaat

1111 0010₂ = 242

Antwoord

R = 242
3.Propositielogica & bewijzen

Antwoord: N = 5

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

Tel de rijen met waarde 1

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

Antwoord

N = 5
4.Propositielogica & bewijzen

Antwoord: ∀x ∃y ¬R(x, y)

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.

Schuif de ontkenning naar binnen

¬∃x ∀y R(x, y) ≡ ∀x ∃y ¬R(x, y)

Antwoord

∀x ∃y ¬R(x, y)

De andere opties laten een kwantor onveranderd, veranderen de volgorde van de kwantoren, of ontkennen de binnenste formule verkeerd.

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

Antwoord: N = 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.

ABCD000111100001111010011312141517160121131150140809011010

Groepeer de enen

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

BD
A′D′
A′C

Minimale SOP-vorm

F = BD + A′D′ + A′C
N = 3

Antwoord

N = 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.

Toestand na elke flank

1001 → 1100 → 0110 → 0011 → 1001 → 1100 → 0110

Decimale waarde

0110₂ = 6

Antwoord

Q = 6
7.Getaltheorie & modulair rekenen

Antwoord: 4−1 mod 91 = 23

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·4 (mod 91).

r = 91, t = 0
r = 4, q = 22, t = 1
r = 3, q = 1, t = −22
r = 1, q = 3, t = 23

Inverse

1 ≡ 23·4 (mod 91)
x = 23
controle: 4·23 = 92 = 1·91 + 1

Antwoord

4−1 mod 91 = 23
8.Getaltheorie & modulair rekenen

Antwoord: c = 276

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.

Herhaald kwadrateren

17 = 16 + 1
891 ≡ 89 (mod 287)
892 ≡ 172 (mod 287)
894 ≡ 23 (mod 287)
898 ≡ 242 (mod 287)
8916 ≡ 16 (mod 287)
8917 ≡ 89·16 ≡ 276 (mod 287)

Cijfertekst

c = 276

Antwoord

c = 276
9.Algoritmen & complexiteit

Antwoord: D · 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

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

Antwoord: A · De fractionele knapzak, waarbij items mogen worden opgesplitst

Waarom dit het antwoord is

Als items kunnen worden opgesplitst, is de beste verhouding eerst optimaal; bij de 0/1-knapzak kan een item met een hoge verhouding een betere combinatie blokkeren, dus is dynamisch programmeren nodig.

Antwoord

A · De fractionele knapzak, waarbij items mogen worden opgesplitst
11.Datastructuren

Antwoord: A · Verplaats het laatste element naar de wortel en laat het omlaag zakken (sift down)

Waarom dit het antwoord is

Het laatste element vult het gat in de wortel en wordt verwisseld met zijn kleinste kind tot de heap-eigenschap geldt, wat O(log n) kost.

Antwoord

A · Verplaats het laatste element naar de wortel en laat het omlaag zakken (sift down)
12.Datastructuren

Antwoord: A · Alle records staan in gekoppelde bladeren, wat bereikscans efficiënt maakt

Waarom dit het antwoord is

In een B+-boom sturen interne knopen alleen de zoektocht en zijn de bladeren in sleutelvolgorde gekoppeld, zodat een bereikquery de eerste sleutel vindt en dan langs de bladeren loopt.

Antwoord

A · Alle records staan in gekoppelde bladeren, wat bereikscans efficiënt maakt
13.Grafentheorie

Antwoord: Eulercircuit

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.

Graden

deg(A) = 2, deg(B) = 4, deg(C) = 2, deg(D) = 2, deg(E) = 2, deg(F) = 2

Oneven hoekpunten

0
Eulercircuit

Antwoord

Eulercircuit
14.Grafentheorie

Antwoord: kant DE

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.

Het algoritme van Prim

1. BE (7)
2. DE (6)
3. CE (11)
4. AC (4)
5. EF (16)

kantnummer 2

DE

Antwoord

kant DE
15.Databases & SQL

Antwoord: C · 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

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

Antwoord: C · Een lopend totaal van amount, geordend op day

Waarom dit het antwoord is

Met ORDER BY en zonder expliciet frame loopt het venster van de eerste rij tot en met de huidige rij (en de rijen met gelijke waarde), wat een cumulatieve som oplevert.

Antwoord

C · Een lopend totaal van amount, geordend op day
17.Computernetwerken

Antwoord: B · Een draadloos station kan botsingen niet betrouwbaar detecteren terwijl het zendt

Waarom dit het antwoord is

Een radiozender kan tijdens het zenden geen andere zwakke signalen horen, en sommige stations zijn voor elkaar verborgen. Daarom wacht 802,11 willekeurige backofftijden en gebruikt het bevestigingen.

Antwoord

B · Een draadloos station kan botsingen niet betrouwbaar detecteren terwijl het zendt
18.Computernetwerken

Antwoord: A · Het levert gecachte content vanaf servers dicht bij de gebruikers

Waarom dit het antwoord is

CDN's plaatsen kopieën van content op veel edgelocaties en leiden gebruikers, vaak via DNS, naar een nabije server. Dat verlaagt de latency en de belasting van de oorspronkelijke server.

Antwoord

A · Het levert gecachte content vanaf servers dicht bij de gebruikers
19.IPv4-subnetting

Antwoord: x = 255

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

Blokgrootte

27 = 128

Subnet nummer 2

netwerk: (2 − 1)·128 = 128
broadcast: 128 + 128 − 1 = 255

Antwoord

x = 255
20.IPv4-subnetting

Antwoord: x = 128

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: ⌊245/128⌋·128 = 128
broadcast: 128 + 128 − 1 = 255
bruikbare hosts: 129 … 254

Antwoord

x = 128

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