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