| August 24 | Course overview | --- |
| August 26 | Introduction | Chapter 1 |
| August 31
. |
Introduction
Math review |
Section 2.2 |
| September 2 | Asymptotic notation | Section 2.1 |
| September 7 | Recurrences | Chapter 4 |
| September 9
. |
Recurrences
Heap-Sort |
Chapter 7 |
| September 14
. |
Heap-Sort
Quick-Sort |
Sections 8.1-8.3 |
| September 16 | Quick-Sort | |
| September 28
. |
Counting-Sort
Radix-Sort |
Section 9.2
Section 9.3 |
| September 30
. |
Stacks and queues
Binary search trees |
Section 11.1
Sections 13.1-13.3 |
| October 5 | Binary search trees | |
| October 7 | EXAM #1 | --- |
| October 12
. |
Binary search trees
Disjoint sets |
Sections 22.1-22.3 |
| October 14 | Disjoint sets | |
| October 19
. |
Representing graphs
Breadth-first search |
Section 23.1
Section 23.2 |
| October 21
. |
Breadth-first search
Depth-first search |
Section 23.3 |
| October 26
. |
Depth-first search
Topological sort Spanning trees |
Section 23.4 Chapter 24 |
| October 28 | Spanning trees | |
| November 2 | Dijkstra's shortest paths | Section 25.2 |
| November 4 | EXAM #2 | --- |
| November 9
. |
Dijkstra's shortest paths
Shortest paths in DAG |
Section 25.4 |
| November 16 | Matrix chains | Section 16.1 |
| November 18
. |
Matrix chains
Common subsequence |
Section 16.3 |
| November 23 | Greedy algorithms | Sections 17.1 and 17.2 |
| November 30 | NP problems | Section 36.2 |
| December 2
. |
Examples of NP
NP-completeness |
Section 36.5
Section 36.3 |