Below are roughly the sections of the CLRS book that I will cover. I may de-emphasize some topics and add others, but this is basically the list.
Topic | Text Reference |
Summations | CLRS Appendix A |
Intro to Algorithms | CLRS Ch 1 (brief) |
Getting Started | Ch 2 (brief) |
Order of Growth/Asymptotics | Ch 3 |
Solving Recurrences | Ch 4 |
Heapsort and Randomized Quicksort | from Ch 6 and Ch 7 |
Lower Bounds for Sorting | Ch 8 (Section 1 only) |
Order Statistics | Ch 9 |
Counting and Probability | Appendix C |
Elementary Data Structures | Ch 10 (brief) |
Hash Tables (time permitting) | Ch 11 (Sections 1 and 2 only) |
Binary Search Trees | Ch 12 (brief) |
Red-Black Trees | Ch 13 |
Augmenting Data Structures | Ch 14 (brief) |
Dynamic Programming | Ch 15 |
Greedy Algorithms | Ch 16 |
Amortized Analysis | Ch 17 |
Mergeable Heaps: Fibonacci Heaps | Ch 19 |
Disjoint Sets | Ch 21 (Section 3 only) |
Elementary Graph Algorithms | Ch 22 |
Minimum Spanning Trees | Ch 23 |
Dijkstra's Algorithm | Ch 24 Section 3 |
Floyd-Warshall Algorithm (time permitting) | Ch 25 Section 2 |
Intro to NP-Completeness | Ch 34 Sections 1 and 2 |
Theory of NP-Completeness | Ch 34 Section 3 |
Week | Topic | Slides | Assignment | Due Date |
---|---|---|---|---|
Week 1 | Syllabus Week | - | - | - |
Week 2 | Asymptotic Analysis | Chapter 3, Appendix A | - | - |
Week 3 | Recurrences | Appendix A, Chapter 4 | - | - |
Week 4 | More on Recurrences | Chapter 4 | - | - |
Week 5 | More on Recurrences | Chapter 4 | Homework 1 | Oct 7, 2023 |
Reading only | Sorting | Chapter 2 | - | - |
Week 6 | Quicksort & Randomizing Quicksort |
Chapter 7 Appendices C.2&C.3, Chapters 5&7 |
- | - |
Week 7 | Heapsort | Chapter 6, Appendix B.5 | Homework 2 | xx xx, 2023 |
Week 8 | Linear Sorting | Chapter 8 | Homework 3 | xx xx, 2023 |
Week 9 | Midterm Exam The Exam will cover textbook chapters 2, 4, 5, 6, 7, and 8 |
- | - | Oct 15 and 16, 2023 |
Week 10 | Binary Search Trees | Appendix B5.2, Chapter 12 | - | - |
Week 11 | Red-Black Trees | Chapter 14 | - | - |
Week 12 | Dynamic Programming | Chapter 15 | - | - |
Week 13 | More on Dynamic Programming |
Chapter 15 | Homework 4 | xx xx, 2023 |
Week 14 | Mid-Semester Break | - | - | - |
Week 15 | Graphs Theory & Shortest Paths |
Chapter 22 Chapter 24 |
- | - |
Week 16 | NP-Completeness | Chapter 34 | - | - |
Week 17 | Revision | - | - | - |
Week 18 & 19 | Final Exams | - | - | - |