All dates and assignments are tentative except for the final exam date. I will almost certainly adjust this schedule as the semester progresses.
Week |
Class Dates | Assignments | Lecture Topics and Reading Assignments |
1 |
Mon, Aug 21 | Chapter 1 (all): What is
an algorithm? Chapter 2 (all): Getting started, insertion sort, merge sort, basic analysis |
|
Wed, Aug 23 | |||
2 | Mon, Aug 28 | Chapter 2 continued | |
Wed, Aug 30 | Hw #1 out | ||
3 | Mon, Sep 4 (Labor Day; no class) |
Chapter 3 (all): Growth
of functions, asymptotic notation, standard notation and common functions |
|
Wed, Sep 6 | |||
4 | Mon, Sep 11 | Hw #1 due | Chapter 3 continued Chapter 4 (4.1, 4.2, 4.3): Recurrences |
Wed, Sep 13 | |||
5 | Mon, Sep 18 | Hw #2 out | Chapter 4 continued Appendix A: Properties of summations |
Wed, Sep 20 | |||
6 | Mon, Sep 25 | Hw #2 due | Chapter 4 continued |
Wed, Sep 27 | Midterm Exam #1 | ||
7 | Mon, Oct 2 (Fall break; no class) |
Chapter 4 continued | |
Wed, Oct 4 | |||
8 | Mon, Oct 9 | Chapter 6
(6.1, 6.2, 6.3, 6.4): Heapsort Chapter 7 (7.1, 7.2, 7.3): Quicksort |
|
Wed, Oct 11 | |||
9 | Mon, Oct 16 | Hw #3 out | Chapter 8 (all): Linear
sorts Chapter 15 (15.1, 15.2, 15.3, 15.4): Dynamic programming |
Wed, Oct 18 | |||
10 | Mon, Oct 23 | Chapter 15 continued | |
Wed, Oct 25 | Hw #3 due | ||
11 | Mon, Oct 30 | Assessment of Learning | Homework and Midterm |
Wed, Nov 1 |
Midterm Exam #2 | ||
12 | Mon, Nov 6 | Chapter 15 continued Chapter 16 (16.1, 16.2, 16.3): Greedy algorithms |
|
Wed, Nov 8 | Hw #4 out | ||
13 | Mon, Nov 13 | Chapter 21 (B.1, B.4,
B.5, 21.1, 21.2, 21.3): Disjoint sets Chapter 23 (B.4, 22.1, 23.1, 23.2): Minimum spanning trees |
|
Wed, Nov 15 | |||
14 | Mon, Nov 20 | Hw #4 due Hw #5 out |
Chapter 24 (22.2, 24.1, 24.3): Single-source shortest paths |
Wed, Nov 22 (Thanksgiving; no class) | |||
15 | Mon, Nov 27 | Chapter 34 (all): NP-Completeness | |
Wed, Nov 29 | Hw #5 due | ||
16 | Wed, Dec 6 | Final Exam | Final Exam: Wed, Dec 6, 12−3 pm, Butler 100 |