|
| Week |
Period |
Topics |
Reading Assignment |
Lab |
1
3/5-3/9 |
Lecture 1 |
Course introduction |
|
Prerequisite assessment |
| Lecture 2 |
Algorithm Analysis |
Pages 1-32. |
2
3/12-3/16 |
Lecture 1 |
Mathematical Toolbox |
Pages 32-52. |
| Lecture 2 |
Recursion and Induction
Execution time |
Pages 53-64. |
3
3/19-3/23 |
Lecture 1 |
Sorting -- Heapsort |
Pages 137-149. |
Sorting Algorithms |
| Lecture 2 |
Sorting -- Quicksort |
Pages 153-171. |
4
3/26-3/30 |
Lecture 1 |
Greedy Algorithms |
Pages 329-343 |
Huffman Compression |
| Lecture 2 |
Order Statistics |
Pages 185-194. |
5
4/2-4/6 |
Lecture 1 |
Homework Presentations |
|
| Lecture 2 |
Midterm Exam |
|
6
4/9-4/13 |
Lecture 1 |
Lab make-up |
|
| Lecture 2 |
Good Friday -- No class |
|
7
4/16-4/20 |
Lecture 1 |
Graphs |
Pages 86-90. |
Graphs |
| Lecture 2 |
Breadth- and Depth-First Search |
Pages 463-483. |
8
4/23-4/27 |
Lecture 1 |
Single-Source Shortest Paths -- Dijkstra's Algorithm |
Pages 514-531. |
| Lecture 2 |
Minimum Spanning Trees -- Kruskal, Prim |
Pages 498-510. |
9
4/30-5/4 |
Lecture 1 |
Red-Black Trees |
Pages 91-97, 244-277. |
| Lecture 2 |
Dynamic Programming |
Pages 299-319. |
10
5/7-5/11 |
Lecture 1 |
NP-complete problems |
|
| Lecture 2 |
Catch-up/Review |
|
11
5/14-5/18 |
Exam week |
Final exam |
|
|
|