Weekly outline
General
1 April - 7 April
1 April: Course Intro and Setup; Entrance Evals
3 April: Reading and Writing Algorithms
Reading: Chapters 1, 28 April - 14 April
8 April: Analyzing Algorithms
10 April: Proving Algorithms Correct
Reading: Chapter 3, Appendix A–C15 April - 21 April
15 April: Algorithm Design Patterns
17 April: Algorithm Complexity and Performance22 April - 28 April
22 April: Trees and Balancing
24 April: Memoization and Dynamic Programming
Reading: Chapter 13, 1529 April - 5 May
29 April: String Matching
1 May: Amortized Analysis
Reading: Chapter 32, 176 May - 12 May
6 May: Midterm Exam
8 May: TriangulationLecture: Andrew Black
Notes: Bryant York13 May - 19 May
13 May: Matrix Operations
15 May: Linear Sorting and Order Statistics
Reading: Chapter 28, 8, 920 May - 26 May
20 May: Graph Representations and Algorithms
22 May: Graph Coloring
Readings: Chapter 22; A. Kozowski and K. Manuszewski, Classical Coloring of Graphs, ch. 1 of Graph Coloring, ed. M. Kubale, AMS 200427 May - 2 June
27 May: Maximum Flow
29 May: Randomization
Reading: Chapter 26, 5.3; Bart Massey, Fast Perfect Weighted Resampling, Proceedings of the 33rd International Conference on Acoustics, Speech, and Signal Processing (ICASSP 2008), Las Vegas, Nevada, March 20083 June - 9 June
3 June: State Space Search
5 June: Quickfire Design Competition
Reading: Matthew L. Ginsberg, Essentials of Artificial Intelligence, chapters 2–3, Morgan Kaufmann Publishers 199310 June - 16 June
Final Exam: Take home: turn in Thursday 12 June 10:15–10:45 or by email submission of PDF to grader.