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 beschrijft de worst-case looptijd van een algoritme?

  1. ADe tijd die het nodig heeft op een trage computer
  2. BDe verwachte tijd die het nodig heeft voor een willekeurige invoer van grootte n
  3. CDe maximale tijd die het nodig heeft over alle invoeren van grootte n
  4. DDe tijd die het nodig heeft voor de kleinste invoer
2.Makkelijk

Een O(n²)-algoritme doet 1 seconde over n = 1000. Hoe lang doet het ongeveer over n = 2000?

  1. A1 seconde
  2. B8 seconden
  3. C4 seconden
  4. D2 seconden
3.Makkelijk

De looptijd van een algoritme is O(n). Hoe heet deze groei?

  1. ALogaritmisch
  2. BLineair
  3. CKwadratisch
  4. DConstant
4.Gemiddeld

Dynamisch programmeren is nuttig wanneer een probleem het volgende heeft:

  1. AOverlappende deelproblemen en optimale substructuur
  2. BEén enkele lus
  3. CAlleen willekeurige invoer
  4. DHelemaal geen deelproblemen, dus het kan in één stap worden opgelost
5.Gemiddeld

Welke uitspraak over een recursieve functie zonder bereikbaar basisgeval is juist?

  1. AZe blijft zichzelf aanroepen totdat de call stack overloopt
  2. BZe geeft automatisch 0 terug
  3. CDe compiler maakt er altijd een lus van die veilig eindigt
  4. DZe loopt in O(1) tijd
6.Gemiddeld

Wat is de tijdcomplexiteit van het standaardalgoritme voor dynamisch programmeren voor de langste gemeenschappelijke deelrij van strings met lengte m en n?

  1. AO(2m+n)
  2. BO(m + n)
  3. CO(mn log n)
  4. DO(mn)
7.Moeilijk

Waarom geeft binair zoeken op een enkelvoudig gelinkte lijst geen O(log n) tijd?

  1. AVergelijkingen op knopen van een gelinkte lijst zijn trager
  2. BGelinkte lijsten kunnen niet worden gesorteerd
  3. CBinair zoeken heeft minstens twee keer zoveel geheugen nodig
  4. DHet middelste element bereiken kost O(n) stappen, omdat er geen directe toegang via een index is
8.Moeilijk

Insertion sort loopt in O(n) op gesorteerde invoer. Is dit in tegenspraak met de ondergrens Ω(n log n) voor sorteren met vergelijkingen?

  1. AJa, de ondergrens is dus fout
  2. BNee, de ondergrens geldt voor het slechtste geval over alle invoeren, niet voor elke invoer
  3. CNee, omdat insertion sort geen sorteeralgoritme op basis van vergelijkingen is
  4. DJa, maar alleen voor arrays korter dan 100

Antwoordenblad

  1. 1. C · De maximale tijd die het nodig heeft over alle invoeren van grootte n
  2. 2. C · 4 seconden
  3. 3. B · Lineair
  4. 4. A · Overlappende deelproblemen en optimale substructuur
  5. 5. A · Ze blijft zichzelf aanroepen totdat de call stack overloopt
  6. 6. D · O(mn)
  7. 7. D · Het middelste element bereiken kost O(n) stappen, omdat er geen directe toegang via een index is
  8. 8. B · Nee, de ondergrens geldt voor het slechtste geval over alle invoeren, niet voor elke invoer

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