| Num | Day | Date | Topics Covered | Materials |
|---|---|---|---|---|
| 1 | Tu | 02 Sep | Overview | |
| 2 | Th | 04 Sep | Programming Basics | expressions and commands, functions |
| 3 | Tu | 09 Sep | Loops and Arrays | code, reading sec 2+3 |
| 4 | Th | 11 Sep | Loops and Arrays II | code, ascii table,C0 tutorial |
| 5 | Tu | 16 Sep | Words | reading |
| 6 | Th | 18 Sep | Specifications and Contracts | code, reading |
| 7 | Tu | 23 Sep | Proving Contracts | code, reading |
| 8 | Th | 25 Sep | Proving Array Bounds | code, reading |
| 9 | Tu | 30 Sep | Linear Search | code, reading |
| 10 | Th | 2 Oct | Selection Sort | code, reading (sections 3 to 6) |
| 11 | Tu | 7 Oct | Binary Search | code, reading |
| 12 | Th | 9 Oct | Quicksort I | code, reading |
| 13 | Tu | 14 Oct | Quicksort II | code, reading |
| 14 | Th | 16 Oct | MIDTERM | |
| Tu | 21 Oct | FALL BREAK | ||
| 15 | Th | 23 Oct | Stacks | implementation, client, reading (sec 1 to 7) |
| 16 | Tu | 28 Oct | Pointers and Structs | finished stack, reading (sec 2) |
| 17 | Th | 30 Oct | Linked Lists | code, reading (sec 4) |
| 18 | Tu | 4 Nov | Implementing data structures: Stacks and queues II | code, reading |
| 19 | Th | 6 Nov | DLL Work time | |
| 20 | Tu | 11 Nov | Unbounded Arrays and Amortized Analysis | code , reading |
| 21 | Th | 13 Nov | Hash Tables I | reading |
| 23 | Tu | 18 Nov | Hash tables II | reading, code |
| 23 | Th | 20 Nov | Priority Queues | reading |
| 24 | Tu | 25 Nov | Priority Queues II | reading, see HW9 for code |
| Th | 27 Nov | THANKSGIVING | ||
| 25 | Tu | 2 Dec | Graphs I | code |
| 26 | Th | 4 Dec | Graphs II/Review | review slides |
| SAT | 13 December | Final exam |
Note that the schedule is subject to change.