Werkblad Algoritmen & complexiteit met antwoorden

Gratis printbaar werkblad Algoritmen & complexiteit: 8 opgaven van makkelijk tot tentamenniveau, met antwoordenblad. Print het of sla het op als pdf.

Nieuw werkbladOnline oefenen met hints

Voor docenten: gratis te printen, kopiëren en in de les te gebruiken. Elk nieuw werkblad heeft nieuwe waarden en een eigen antwoordblad. Een link naar ExamProblems op je cursuspagina wordt gewaardeerd.

Naam: ____________________   Datum: ____________

1.Makkelijk

Wat is de best-case tijdcomplexiteit van insertion sort op een al gesorteerde array?

  1. AO(n)
  2. BO(n²)
  3. CO(n log n)
  4. DO(1)
2.Makkelijk

Wat is memoisatie?

  1. AGeheugen vrijgeven nadat een functie is teruggekeerd
  2. BResultaten van functieaanroepen opslaan, zodat herhaalde aanroepen uit het geheugen worden beantwoord
  3. CRecursie automatisch omzetten in een equivalente lus, zodat geen call stack nodig is
  4. DCommentaar schrijven naast elke regel code
3.Makkelijk

Wat is de worst-case tijdcomplexiteit van mergesort?

  1. AO(n log n)
  2. BO(n²)
  3. CO(log n)
  4. DO(n)
4.Gemiddeld

Breedte-eerst zoeken (BFS) op een ongewogen graaf vindt:

  1. AKortste paden in aantal kanten vanaf de startknoop
  2. BKortste paden in grafen met negatieve kantgewichten
  3. CEen topologische volgorde in alle grafen
  4. DDe minimaal opspannende boom
5.Gemiddeld

Wat is de oplossing van de recurrente betrekking T(n) = 2T(n − 1) + O(1)?

  1. AO(2ⁿ)
  2. BO(n)
  3. CO(n log n)
  4. DO(n²)
6.Gemiddeld

Wat berekent het algoritme van Floyd-Warshall, en hoe snel?

  1. AEen minimale opspannende boom in O(E log V)
  2. BEen topologische ordening in O(V²)
  3. CKortste paden tussen alle paren knopen in O(V³)
  4. DKortste paden vanuit één bronknoop naar alle andere in O(V + E)
7.Moeilijk

Het stopprobleem (halting problem) laat zien dat:

  1. ALussen vermeden moeten worden
  2. BElk programma uiteindelijk stopt
  3. CSommige programma's sneller draaien op snellere computers, dus stoppen hangt van de hardware af
  4. DGeen enkel algoritme voor elk programma en elke invoer kan beslissen of het stopt
8.Moeilijk

Wat moet je doen om aan te tonen dat een nieuw probleem X NP-moeilijk is?

  1. AAantonen dat X in polynomiale tijd kan worden geverifieerd
  2. BEen bekend NP-moeilijk probleem in polynomiale tijd reduceren tot X
  3. CX in polynomiale tijd reduceren tot een bekend NP-moeilijk probleem
  4. DAantonen dat X geen polynomiaal algoritme heeft voor kleine invoer

Antwoordenblad

  1. 1. A · O(n)
  2. 2. B · Resultaten van functieaanroepen opslaan, zodat herhaalde aanroepen uit het geheugen worden beantwoord
  3. 3. A · O(n log n)
  4. 4. A · Kortste paden in aantal kanten vanaf de startknoop
  5. 5. A · O(2ⁿ)
  6. 6. C · Kortste paden tussen alle paren knopen in O(V³)
  7. 7. D · Geen enkel algoritme voor elk programma en elke invoer kan beslissen of het stopt
  8. 8. B · Een bekend NP-moeilijk probleem in polynomiale tijd reduceren tot X

Volledige stapsgewijze oplossingen: oefen dit onderwerp op examproblems.com.