Recitation 1 
W 8/29 
The C0 Language 
( Code ) (C0 Documentation from Frank Pfenning) 
Recitation 2 
F 8/31 
Reasoning with Loop Invariants (POW and pow_iter) 
(HTML Notes from Rob Simmons) 
Recitation 3 
W 9/5 
Hex Notation, 2's Complement, and ARGB Images 
(PDF Notes from Josh Zimmerman) (safe_add code) 
Recitation 4 
F 9/7 
Bit manipulation, A Note on Loop Invariants, and Arrays 
(PDF Notes from Josh Zimmerman) (C0 Documentation) 
Recitation 5 
W 9/12 
Looping through Arrays with Strong Contracts (Instructor: Carsten Varming) 
(Code) 
Recitation 6 
F 9/14 
Binary Search 
(PDF Notes, Solutions from Josh Zimmerman) 
Recitation 7 
W 9/19 
Unit Testing 
(PDF Notes, PDF Code, Code Directory) 
Recitation 8 
F 9/21 
Big O and Sorting 
(PDF Notes) 
Recitation 9 
W 9/26 
Quicksort Review (Quickly), Pointers, and Linked Lists 
(PDF Notes, Solutions from Josh Zimmerman) (Quicksort Notes, Last Page from Last Time) 
Recitation 10 
F 9/28 
Tutorial plus Inplace list append (Instructor: Carsten Varming) 

Recitation 11 
W 10/3 
Memory Layout (Stack, Heap, etc.) and Recursion's Effects on the Stack 
(PDF Notes, Solutions from Josh Zimmerman)

Recitation: Midterm 1 Review 
F 10/5 
Preliminary Review for Midterm (Instructor: Rob Simmons) 

Recitation 12 
W 10/10 
Amortized Analysis 
(PDF Notes, Solutions from Josh Zimmerman)

Recitation 13 
F 10/12 
Homework 4 Programming Overview 
(Homework 4 Programming)

Recitation 14 
W 10/17 
Hash tables 
(PDF Notes, Solutions from Josh Zimmerman)

Recitation 15 
F 10/19 
No Recitation 
(Midsemester Break) 
Recitation 16 
W 10/24 
Priority queues, heaps, and backtracking search 
(PDF Notes, Solutions from Josh Zimmerman) (heaps.c0 from lecture)

Recitation 17 
F 10/26 
Binary search trees 
(PDF Notes, Solutions from Josh Zimmerman; WARNING: These solutions have a bug in the proof. It's there to help you study via finding it. If you can't find it, come to office hours!) (bst.c0 from lecture)

Recitation 18 
W 10/31 
AVL Trees  balanced binary search trees (Instructor: Nivedita Chopra) 
(PDF Notes, Solutions from Josh Zimmerman)

Recitation 19 
F 11/2 
C: Function pointers, strings, contract macros, memory management 
(PDF Notes, Solutions from Josh Zimmerman) (funcpoint.c, strcat.c)

Recitation 20 
W 11/7 
More C: Addressof operator, free, valgrind, memory, common C mistakes 
(PDF Notes, Solutions from Josh Zimmerman) (heaps.h, heaps.c, useafterfree.c)

Recitation 21A 
F 11/9 
Midterm #2 Review 
(PDF Notes) 
Recitation 21B 
W 11/14 
Tries 
(PDF Notes), (Code) 
Recitation 22 
F 11/16 
More C Pitfalls 
(PDF Notes) 
Recitation 23 
W 11/21 
Thanksgiving Break 

Recitation 24 
W 11/28 
Generic graph search with priority queues and Dijkstra's algorithm 
(PDF Notes) 
Recitation 25 
W 11/30 
Minimal Spanning Trees and Kruskal's Algorithm 
(PDF Notes) 