| Date | Assignment | Reading | Subject | |
|---|---|---|---|---|
| Jan 25 | Intro; define problem, efficiency, resource, problem size | |||
| Jan 27 | chap. 1 | Some example problems | ||
| Jan 29 | HW1 | 2.1, 2.2 | algorithm vs. program; ignoring constant factors | |
| Feb 01 | 2.3, 2.4 | O(*), θ(*), o(*), Ω(*), ω(*), etc. | ||
| Feb 03 | 2.5, exercises | Some example problems | ||
| Feb 05 | O(*), θ(*), o(*), Ω(*), ω(*), etc. | |||
| Feb 08 | Last day to add classes | |||
| Feb 08 | Not much: nobody had read the book or started on the homework | |||
| Feb 10 | Snow Day | |||
| Feb 12 | HW2 | Practice with asymptotic analysis | ||
| Feb 15 | HW1 due | class presentations of HW1; proof strategies for quantifiers |
||
| Feb 17 | 3.1, 3.2 | more class presentations of HW1; graph problems and representation |
||
| Feb 19 | 3.3, 3.4 | Graph problems | ||
| Feb 22 | Last day to drop classes | |||
| Feb 22 | 3.5, 3.6 | Graph problems | ||
| Feb 24 | ||||
| Feb 26 | Snow day | |||
| Mar 01 | Greedy algorithms | |||
| Mar 03 | HW2 due | supposed to be class presentations of HW2, but nobody had finished it. In fact, nobody had finished HW1. | ||
| Mar 05 | Greedy algorithms | |||
| Mar 08 | Greedy algorithms | |||
| Mar 10 | Recursion and recurrence relations | |||
| Mar 12 | divide and conquer algorithms | |||
| Mar 13-21 | Spring break | |||
| Mar 22 | really chap. 2 | discuss asymptotic analysis | ||
| Mar 24 | HW3 | discuss proofs of correctness | ||
| Mar 26 | continue proof of correctness | |||
| Mar 29 | Last day to withdraw from classes | |||
| Mar 29 | another problem amenable to a greedy algorithm | |||
| Mar 31 | shortest paths in a graph | |||
| Apr 02 | Dijkstra's algorithm | |||
| Apr 05 | ||||
| Apr 07 | ||||
| Apr 09 | HW3 due | 5.1-5.5 | divide and conquer | |
| Apr 12 | ||||
| Apr 14 | 6.1, 6.2, online examples | dynamic programming: one parameter, one previous value | ||
| Apr 16 | I'll be away at a conference | |||
| Apr 19 | dynamic programming: multiple previous values | |||
| Apr 21 | 6.4 | dynamic programming: two parameters | ||
| Apr 23 | dynamic programming: intervals and subranges | |||
| Apr 26 | 7.1-7.3 | network flows and cuts | ||
| Apr 28 | computability | |||
| Apr 30 | HW4 | |||
| May 03 | ||||
| May 05 | 8.1-8.3 | computational complexity | ||
| May 07 | class presentations of any remaining homework | |||
| May 10 | HW4 due | catch up and review for final exam | ||
| May 12 | 344 final exam, 8:00-10:00 AM | |||