Date | Lecture | Reading | Homework | |||
---|---|---|---|---|---|---|
|
||||||
Week 1: | ||||||
Mon | Jan | 16 | Class Introduction | |||
Wed | Jan | 18 | Insertion sort and analysis | Ch. 1, 2.1-2.2 | ||
Thur | Jan | 19 | Loop invariants and insertion sort correctness | |||
Fri | Jan | 20 | Algorithm design; merge sort; more correctness | 2.3 | ||
|
||||||
Week 2: | ||||||
Mon | Jan | 23 | No Class: MLK Observance | |||
Wed | Jan | 25 | Asymptotic Notation | Ch. 3 | ||
Thur | Jan | 26 | Start trees | Ch. 10 (mostly redux) plus 12.1 | ||
Fri | Jan | 27 | Binary trees | 12.1 -12.3 | Homework 1 | |
|
||||||
Week 3: | ||||||
Mon | Jan | 30 | Binary Search Trees | |||
Wed | Feb | 1 | Finish Binary Search Trees | |||
Thur | Feb | 2 | Binary Heaps | 6.1-6.3 | ||
Fri | Feb | 3 | Binary Heaps | |||
|
||||||
Week 4: | ||||||
Mon | Feb | 6 | Heapsort | 6.4 | ||
Wed | Feb | 8 | Priority Queues; Heap conclusion |
6.5 |
||
Thur | Feb | 9 | Recurrences 1: Substitution |
4.3 | ||
Fri | Feb | 10 | Recurrences 2: Tree, Master Thm |
4.4, 4.5 |
Homework 2 |
|
|
||||||
Week 5: | ||||||
Mon | Feb | 13 | Midterm 1 (7:30) |
|||
Wed | Feb | 15 | Master Method/Theorem | 4.5 | ||
Thur | Feb | 16 | Hash tables - direct mapping | 11.1-11.3 | ||
Fri | Feb | 17 | Hash tables - chaining, hash functions | |||
|
||||||
Week 6: | ||||||
Mon | Feb | 20 | Midterm 1 Review | Homework 3 | ||
Wed | Feb | 22 | Multiplication method hash functions; intro Open Address Hashing | 11.4 | ||
Thur | Feb | 23 | Open Address Hash conclusion; Intro Red-black trees | 13.1 | ||
Fri | Feb | 24 | Continue Red-black trees: tree height bound, Binary Tree Rotations | 13.2-13.3 | Hash Table proposal by end of day | |
|
||||||
Week 7: | ||||||
Mon | Feb | 27 | Quiz; Red-black Insert by Picture | |||
Wed | Feb | 29 | Red-black Insert | |||
Thur | Mar | 1 | no class; hash table work | |||
Fri | Mar | 2 | Red-black Delete | Homework 4 | ||
|
||||||
Week 8: | ||||||
Mon | Mar | 5 | AVL Trees -- Intro and Insert | |||
Wed | Mar | 7 | AVL Trees Delete and Basic Analysis | Not in textbook | ||
Thur | Mar | 8 | Review | |||
Fri | Mar | 9 | Midterm 2 | |||
|
||||||
Spring Break
|
||||||
|
||||||
Week 9: | ||||||
Mon | Mar | 19 | Review Midterm | |||
Wed | Mar | 21 | AVL Deletion Redux; C++ Inheritance; HW5 | |||
Thur | Mar | 22 | Quicksort I | 7.1-7.2 | ||
Fri | Mar | 23 | Quicksort II | 7.3-7.4 | ||
|
||||||
Week 10: | ||||||
Mon | Mar | 26 | No Class | |||
Wed | Mar | 28 | Quicksort wrap | Ch. 8 | ||
Thur | Mar | 29 | Comparison Sort Lower Bound | |||
Fri | Mar | 30 | Counting Sort | Homework 5 | ||
|
||||||
Week 11: | ||||||
Mon | Apr | 2 | Finish Sorts | |||
Wed | Apr | 4 | Dynamic Programming I | Ch. 15 | ||
Thur | Apr | 5 | Project Investigation | |||
Fri | Apr | 9 | Dynamic Programming II | Homework 6 | ||
|
||||||
Week 12: | ||||||
Mon | Apr | 9 | Floyd -Warshall; Intro Multithreaded Algorithms | Ch. 27 | ||
Wed | Apr | 11 | Multithreaded Algorithms | Final Project Proposal | ||
Thur | Apr | 12 | ||||
Fri | Apr | 13 | Midterm 3 (Thursday @ 7pm); no class Friday | |||
|
||||||
Week 13: | ||||||
Mon | Apr | 16 | Project Working Sessions | |||
Wed | Apr | 18 | Project Working Sessions | |||
Thur | Apr | 19 | Project Working Sessions | |||
Fri | Apr | 20 | Project Working Sessions | Project Implementation Demo | ||
|
||||||
Week 14: | ||||||
Mon | Apr | 23 | Final Project: Splay Trees | |||
Wed | Apr | 25 | Course Eval; Final Project: B-Trees Part I | |||
Thur | Apr | 26 | Final Project: Quad Tree | |||
Fri | Apr | 27 | Final Project: Fibonacci Heap | |||
|
||||||
Mon | Apr | 30 | Final Project: B-Trees Part II | |||
|
||||||
Wed | May | 2 | Final Exam |