| Date | Lecture Topic | Reading | Due | Assigned |
|---|---|---|---|---|
| Tues, Jan 20 | Which algorithm is best? Finding the closest two points. | Sections 1.1-2.3 (1st ed: 1.1-1.4) |
||
| Thurs, Jan 22 | Fast algorithm for finding closest pair of points | Section 33.4 (1st ed: 35.4) |
Lab 1 | |
| Tues, Jan 27 | Asymptotic notation | Chapter 3 (1st ed: Ch. 2) |
Lab 1 - early | |
| Thurs, Jan 29 | Divide-and-conquer algorithms | Section 4.2 (1st ed: same) |
||
| Tues, Feb 3 | Solving recurrences | Section 4.3 (1st ed: same) |
Lab 1 | Homework 1 |
| Thurs, Jan 5 | Dictionary ADT, hashing | Sections 10.2, 11.1-11.2 (1st ed: 11.2,12.1-12.2) |
||
| Tues, Feb 10 | Hashing analysis (and probability review) | Section 11.3.1 and Appendix C.3 (1st ed: 12.3.1 & 6.3 to middle of pg 113) |
Homework 1 | Lab 2 |
| Thur, Feb 12 | Quicksort worst-case analysis, randomized quicksort | Section 7.1-7.2 (1st ed: 8.1-8.2) |
||
| Tues, Feb 17 | Analysis of randomized quicksort | Sections 7.3-7.4 (1st ed: 8.3-8.4) | Lab 2 | Homework 2 |
| Thurs, Feb 19 | Sorting lower bound | Sections 8.1-8.2 (1st ed: 9.1-9.2) |
||
| Tues, Feb 24 | Sorting lower bound (cont) | Homework 2 | Homework 3 | |
| Thurs, Feb 26 | Counting sort and radix sort | Section 8.3 (1st ed: 9.3) |
||
| Tue, Mar 2 | Binary search trees | Sections 12.1-12.3 (1st ed: 13.1-13.3) |
Homework 3 | |
| Thur, Mar 4 | Midterm Exam | |||
| Mar 8 - Mar 14 | Spring Break | |||
| Tues, Mar 16 | Skip lists | Handout | Lab 3 | |
| Thurs, Mar 18 | Skip list analysis | |||
| Tues, Mar 23 | B-trees | Sections 18.1-18.3 (1st ed: 19.1-19.3) |
Lab 3 - early | |
| Thurs, Mar 25 | B-trees (cont) | |||
| Tues, Mar 30 | Priority Queue ADT, binary heaps | Sections 6.1-6.2 (1st ed: 7.1-7.2) |
Lab 3 | Homework 4 |
| Thurs, Apr 1 | Graph problems, representing graphs | Section 22.1 (1st ed: 23.1) |
||
| Tues, Apr 6 | Breadth-first search (BFS), introduce Dijkstra's alg | Section 22.2 (1st ed: 23.2) |
Homework 4 | Lab 4 |
| Thurs, Apr 8 | Dijkstra's shortest path algorithm | Sections 24.3-24.5 (1st ed: 25.1-25.2) |
||
| Tues, Apr 13 | Prim's Minimum Spanning Tree (MST) Alg | Sections 23.1-23.2 (1st ed: 24.1-24.2) |
Lab 4 - early | |
| Thur, Apr 15 | Analysis of Prim's and Dijkstra's algorithms | Sections 22.3-22.4 (1st ed: 23.3-23.4) |
||
| Tue, Apr 20 | DFS and topological sort | Sections 22.3-22.4 (1st ed: 23.3-23.4) |
Lab 4 | Homework 5 |
| Thur, Apr 22 | Garbage collection algorithms | Handout | ||
| Tues, Apr 27 | Student Selected Topic | Homework 5 | ||
| Thur, Apr 29 | Review for Final | |||
| Friday, May 11 | Final Exam 1:00pm-3:00pm |