This schedule is preliminary and will be updated during the course period. Click on the date of the episode to see details (only for episodes that are public now).
| Week | Wednesday | Friday | ||||||
| Date | Expected Reading | Lecture (13:30-15:30) Exercises (15:30-16:30) |
Date | Expected Reading | Lecture (10:00-12:00) Exercises (13:00-16:00) | |||
| 1 | Aug 29 | RS 1.0—1.1, 2.0—2.4, 2.7 [30pp, 3h] | [AW] Lecture: Measuring performance (complexity) | Aug 31 | RS 2.6, 6.0—6.1, 6.3—6.4, 8.0—8.1, 8.3, 8.6 [30pp, 3h30min] | [AW] Lecture: Array searching & Merge-Sort (linear search, binary search, merge sort, estimating expected running time) | ||
| Exercises cancelled | Afternoon session cancelled | |||||||
| 2 | Sep 5 | [SS] Exercises: 13:30-16:30 (!): Measuring performance (whole 3h slot) | Sep 7 | MS Preface, Ch. 1-3 (up to and including p.73) [~75pp,~5h] | [PT] Lecture [test 1]: What is testing? Testing approaches. Types of testing | |||
| [SS] Exercises: searching and Merge-Sort | ||||||||
| 3 | Sep 12 | MS Ch. 3(from p.78), 4 [~70pp,~5h] | [PT] Lecture [test 2]: Use cases, JUnit | Sep 14 | MS Ch. 5,6 [~84pp,~8h] | [PT] Lecture [test 3]: Interaction and system testing, coverage, performance testing | ||
| [AHN] Lab: Eclipse & JUnit setup | [AHN] Lab Exercises: Testing | |||||||
| 4 | Sep 19 | Notes | [PT] Lecture [test 4]:Summary, Tools for versioning, profiling and building software systems | Sep 21 | RS 6.6, 6.10 7.1—7.4, 10.0—10.3, 10.6 [45pp, 5h] | [AW] Lecture: Performance Characteristics of sorting. | ||
| [AHN] Tools and performance testing | [AHN] Lab Exercises: Continued from Sep 19 | |||||||
| 5 | Sep 26 | RS 12.6—12.7, p. 543, pp. 548—549, Program 12.22 p. 551, 13.0, 13.3, 13.6 [27pp, 3h30] | [AW] Lecture: Binary search trees and 2-3-4 trees. | Sep 28 | RS 14.0—2,14.5. P entirely (pp. 1—6, see below), PR pp. 1—5 (see below) [30pp, 4h] | [AW] Lecture: Hashing | ||
| [AW] Exercises: Characteristics of sorting | [AHN] Exercises: search trees | |||||||
| 6 | Oct 3 | [AHN] mid-term exam | Oct 5 | [SS] Exercises: hashing (2h) | ||||
| Exercises: cancelled | [AHN] Programming contest (no class) | |||||||
| 7 | Oct 10 | RS 17.0, 17.2 (until p.20), 17.3—17.4, p.40, 18.0—18.3, 18.5, 18.7 [50pp, 5h] | [AW] Lecture: Graphs and graph Traversals: DFS, BFS. | Oct 12 | RS 21.0—2 + handout from RN [35pp, 4h] | [SS] Lecture: Shortest Paths | ||
| [AW] Exercises:Graph traversals | [SS] Exercises::Graph traversals ctd. | |||||||
| — | Fall vacation | |||||||
| 8 | Oct 24 | [PT,AW] Project Kick-off | Oct 26 | no new reading | [AW,AHN] Lecture: Course overview. Exam preparation. (2 hours) [slides] | |||
| Groups meet with supervisor (stay close to 3A14 or send mail about where you are) | [SS] Exercises: Dijkstra and A* (2 hours) | |||||||
| 9 | Oct 31 | Nov 2 | Groups meet supervisors | |||||
| Guest lecture by Jakob Jensen from KMD | ||||||||
| 10 | Nov 7 | Nov 9 | ||||||
| 11 | Nov 14 | Project Increment 1 deadline | Nov 16 | |||||
| 12 | Nov 21 | Nov 23 | ||||||
| 13 | Nov 28 | Groups meet with supervisor | Nov 30 | |||||
| 14 | Dec 5 | Dec 7 | ||||||
| 15 | Dec 12 | Groups meet with supervisor | Dec 14 | |||||
| 16 | Dec 19 | Project hand-in at exam office, deadline 15:00 | ||||||
| — | Oral exams: January 11, 14 | |||||||
[RS] Robert Segdewick. Algorithms in Java. Addison-Wesley 2003.
[MS] McGregor and Sykes. A Practical Guide to Testing Object-Oriented Software. Addison Wesley 2001.
[GT] Michael T. Goodrich. Roberto Tamassia. Data Structures & Algorithms in Java. 4th Edition. Wiley 2006.
[RN] Stuart Russell and Peter Norvig. Artificial Intelligence. A Modern Approach. Second Edition, Prentice Hall, 2003.
[P] R. Pagh, Cuckoo Hashing for Undergraduates.
[PR] "Pagh and Rodler: Cuckoo hashing"
Mandatory assignments can be written on paper and placed in the course pigeonhole on first floor, outside the study administration office. Manuscripts are permitted (and well received).