Course Schedule

Unit 1: Fundamental Concepts & Binary Search Trees

Week Topics Text Assignments
1/27 Course Introduction
Arrays, Linked Lists, and Recursion
Ch. 3 (1/27) Project 0 Assigned
2/3 Stacks & Queues Ch. 5 (2/3) Project 1 Assigned
(2/4) Project 0 Due
2/10 Asymptotic Analysis Ch. 4 (2/10) HW 1 Assigned
2/17 Trees and Binary Search Trees Ch. 7, 10.1 (2/17) Project 2 Assigned
(2/18) Project 1 Due

(2/17) HW 1 Due
2/24 AVL Trees 10.2
3/2 Red-Black Trees
AA Trees
10.5
Wikipedia
(3/3) Project 2 Due
(3/2) HW 2 Asigned
3/9 Midterm Exam Review
Exam
(3/9) HW 2 Due

Midterm Exam #1: Wednesday, March 11

Spring Break March 15-21

Unit 2: More Trees, Heaps, & Hashing

Week Topics Text Assignments
3/23 More Red-Black Trees
Splay Trees
10.4
10.3
(3/28) Project 3 Assigned
3/30 Binary Heaps
8.1-8.3
(3/30) HW 3 Assigned
4/6 Leftist Heaps
Pairing Heaps
Leftist Heap
Pairing Heap
(4/6) Project 4 Assigned
(4/7) Project 3 Due
(4/6) HW 3 Due
4/13 Hash Tables 9.2 (4/15) HW 4 Assigned
4/20 Range Queries
Kd-Trees
Midterm Exam Review
(4/21) Project 4 Due
(4/22) HW 4 Due

Midterm Exam #2: Monday, April 27

Unit 3: Advanced Topics

Week Topics Text Assignments
4/27 Midterm Exam
Sorting
5/4 Graphs and Graph Algorithms Ch 13 (5/4) HW 5 Assigned
5/11 Final Exam Review (5/11) HW 5 Due

Final Exam: Friday May 15, 1:00-3:00 PM