Warning! This is the 2012 course's website! You probably want the current course website.
Exempeltentamen
Eftersom årets tentamen skiljer sig en del i form och innehåll mot föregående års, så ger jag en exempeltenta här. Såhär ser försättsbladet ut.
Tentan är uppdelad i 6 "lätta" frågor och 3 "svåra" frågor.
- Frågorna har inga poäng, endast rätt eller fel gäller!
- För godkänt krävs att du har svarat rätt på 5 av de lätta frågorna.
- För väl godkänt krävs dessutom att du har svarat rätt på 2 av de svåra frågorna.
Ni får inte ha kursboken med till tentan. Däremot får ni ha en fusklapp — en (1) A4-sida med valfria anteckningar, hand- eller maskinskrivna. OBS! Endast ena sidan får vara använd!
Nedan följer ett antal frågor från övningarna och kursboken, som skulle kunna vara passande tentafrågor. Några av frågorna är lite för stora för en tenta (t.ex. att bygga ett träd från sekvensen a b c … x y z), så motsvarande tentafråga blir isåfall en deluppgift (t.ex. att stoppa in x y z i ett redan givet träd).
"Lätta" frågor
En tentamen skulle kunna bestå av sex av dessa frågor.
Frågor från övningssidan
- Övning 6 (komplexiteten för KWArrayList-metoder) i avsnittet om komplexitet från vecka 11.
- Övning 7 (algoritm som tar bort kommentartext) i avsnittet om listor från vecka 11.
- Övning 6 (sätt in element i en heap) i avsnittet om prioritetsköer från vecka 13.
- Övning 5 (sätt in element i ett träd) i avsnittet om självbalanserande träd från vecka 16. (För att uppgiften inte ska ta för lång tid eller för många svarspapper, så blir en motsvarande tentafråga att stoppa in ett eller två värden i ett redan färdigbyggt träd, inte att bygga ett träd från början).
- Övning 9, 10 eller 11 (implementera en sorteringsfunktion) i avsnittet om Haskell från vecka 17.
- Övning 7 (sortera för hand) i avsnittet om sortering från vecka 18.
- Övning 8 (vilken komplexitet har sorteringsalgoritmen) i avsnittet om sortering från vecka 18.
Frågor från inlämningsuppgifterna
- Beräkna komplexiteten för någon av funktionerna Ex1–Ex7 i inlämningsuppgift 1.
Frågor från kursboken
- Kapitel 2:
- Programming exercise 1 på sid 69.
- Programming exercise 2 på sid 69.
- Programming exercise 1 på sid 98.
- Programming exercise 3 på sid 98.
- Kapitel 3:
- Programming exercise 1 på sid 161.
- Self-check exercise 1+2 (tillsammans) på sid 169.
- Kapitel 4:
- Review question 1 på sid 238–9.
- Någon av review questions 2–7 på sid 239.
- Kapitel 5:
- Programming exercise 4 på sid 259.
- Kapitel 6:
- Self-check exercise 4 på sid 303.
- Self-check exercise 2 på sid 306.
- Programming exercise 3 på sid 315.
- Self-check exercise 2 på sid 332.
- Self-check exercise 3 på sid 332.
- Self-check exercise 1+2 (tillsammans) på sid 344.
- Self-check exercise 3 på sid 344.
- Quick-check exercise 5 på sid 355.
- Quick-check exercise 8 på sid 355.
- Kapitel 7:
- Self-check exercise 2 på sid 382.
- Self-check exercise 3 på sid 383.
- Programming exercise 1 på sid 383.
- Self-check exercise 1 på sid 395.
- Programming exercise 5 på sid 395.
- Quick-check exercise 5–7 (tillsammans) på sid 415.
- Review question 1 på sid 416.
- Review question 2 på sid 416.
- Kapitel 8:
- Self-check exercise 1 på sid 427.
- Self-check exercise 1 på sid 435.
- Self-check exercise 1 på sid 446.
- Self-check exercise 1+2 (tillsammans) på sid 451.
- Self-check exercise 1 på sid 460.
- Self-check exercise 2 på sid 460.
- Quick-check exercise 6, 7 eller 8 på sid 460.
- Programming exercise 5 på sid 468.
- Kapitel 9:
- Self-check exercise 3 på sid 490.
- Self-check exercise 2 på sid 502.
- Quick-check exercise 2 på sid 533.
- Review question 2 på sid 534.
- Review question 3 på sid 534.
- Kapitel 10:
- Self-check exercise 1+2+3 (tillsammans) på sid 559–60.
- Self-check exercise 1+2 (tillsammans) på sid 572.
- Self-check exercise 1 eller 2 på sid 588.
- Self-check exercise 3 eller 4 på sid 588.
- Någon av quick-check exercises 4–8 på sid 590.
"Svåra" frågor
Dessutom skulle man kunna tänka sig att tentan består av tre av följande lite svårare frågor.
Frågor från övningssidan
- Övning 2 (en algoritm som översätter infixuttryck) i avsnittet om stackar från vecka 12.
- Övning 5 (modifiera ett binärt sökträd) i avsnittet om träd och sökträd från vecka 13.
- Övning 10 (en linjär algoritm som ordnar om ett fält med enbart 2 värden) i avsnittet om sortering från vecka 18.
- Övning 6 (bipartita grafer) i avsnittet om grafer från vecka 19.
Frågor från kursboken
- Kapitel 2:
- Programming project 2 på sid 145.
- Samma uppgift, fast i Haskell.
- Kapitel 5:
- Programming project 3 på sid 291.
- Programming project 7 på sid 291.
- Samma uppgifter, fast i Haskell.
- Kapitel 6:
- Programming project 7 på sid 357.
- Programming project 11 på sid 358.
- Kapitel 7:
- Programming project 2 på sid 416.
- Kapitel 10:
- Programming project 7 på sid 592–3.
- Programming project 8 på sid 593.