Book Chapters
- Week 1:
- Wednesday, August 24th: Chapter 2, sections 2.1, 2,2, and 2.3, and
Chapter 3, sections 3.1 and 3.2 (O(), Ω() Θ())
- Friday, August 26th Chapter 4, sections 4.3, 4.4 (Substitution
Method, Recursion Trees)
- Week 2:
- Monday, August 29th Chapter 4, section 4.4, 4.5 (Recursion Trees, Master Method)
- Wednesday, August 31st Chapter 5, sections 5.1 - 5.3 (Hiring
Problem, Indicator Variables, Randomized Algorithms
- Friday, September 2nd: Chapter 6: Complete (Heapsort)
- Week 3:
- Monday, September 5th Holiday
- Wednesday, September 7th: Chapter 7 Complete (Quicksort)
- Friday, September 9th: Chapter 8 (Non-comparison sorting)
- Week 4:
- Monday, September 12th Chapter 9: Selection
- Wednesday, September 14th: Chapter 13 Complete (Red-Black Trees)
- Friday, September 16th: Chapter 13 / Chapter 14: Complete (Red-Black Trees, Modifying Data Structures)
- Week 5:
- Monday, September 19th: Chapter 13 / Chapter 14: Complete (Red-Black Trees, Modifying Data Structures)
- Wednesday, September 21st: Chapter 15, Section 15.1 and 15.2 (Dynamic
Programming)
- Friday, September 23rd: Chapter 15, Section 15.3, 15.4 (Dynamic
Programming)
- Week 6:
- Monday, September 26th: Chapter 16, Sections 16.1-16.2 (Greedy)
- Wednesday, September 28th: Chapter 16, Sections 16.1-16.2 (Greedy)
- Friday, September 30th: Chapter 16, Sections 16.3-16.4 (Greedy)
- Week 7:
- Monday, October 3rd: Midterm Review
- Wednesday, October 5th: Midterm
- Friday, October 7th: Chapter 18, Sections 18.1-18.3 (B-Trees)
- Week 8:
- Monday, October 10th: Chapter 18, Sections 18.1-18.3 (B-Trees), Chapter 17, Sections 17.1-17.2 (Amoritized Analysis)
- Wednesday, October 12th: Chapter 17, Sections 17.3 - 17.4 (Amortized Analysis)
- Friday, October 14th: Chapter 19 (Fibonacci Heaps)
- Week 9:
- Monday, October 17th: Fall Break
- Wednesday, October 19th: Chapter 21 (Disjoint Sets)
- Monday, October 21st: Chapter 22, Sections 22-1-22.3 (Basic Graphs, connected components)
- Week 10:
- Monday, October 24th: Chapter 22, Sections 22-1-22.3 (Basic Graphs, connected components)
- Wednesday, October 26th: Chapter 22, Section 22.4, Chapter 23, Section 23.1 (Minimum Cost Spanning Trees)
- Friday, October 28th: Chapter 24 (Shortest Paths algorithms)
- Week 11:
- Monday, October 31st: Chapter 25, Sections 25.1-25.2 (All Pairs Shortest Paths)
- Wednesday, November 2nd: Chapter 26 (Flow Networks)
- Friday, November 4th: Chapter 26 (Flow Networks), Chapter 33 (Computational Geometry)
- Week 12:
- Monday, November 7th: Chapter 33 (Computational Geometry)
- Wednesday, November 9th: Chapter 32 (String Matching)
- Friday, November 11th: Chapter 32 (String Matching)
- Week 13:
- Monday, November 14th: Chapter 34 (NP-Completeness)
- Wednesday, November 16th: Chapter 34 (NP-Completeness)
- Friday, November 18th: Midterm II Review
- Week 14:
- Monday, November 21st: Midterm II
- Wednesday, November 23th: Chapter 35 (Apporixmation Algorithms)
- Friday, November 25th: Thanksgiving Holiday
- Week 15:
- Monday, November 28st: Chapter 35 (Apporixmation Algorithms)
- Wednesday, November 30th: Compression (not in textbook)
- Friday, Dec 2nd: Compression (not in textbook)
- Week 16:
- Monday, Dec 5th: Review
- Wednesday, Dec 7th: Review
Lecture Notes
- Algorithm Analysis:
lecture
printable
- Probabilistic Analysis:
lecture
printable
- Heaps:
lecture
printable
- Quicksort:
lecture
printable
- Sorting II:
lecture
printable
- Selection:
lecture
printable
- Red/Black Trees:
lecture
printable
- Modifyng Data Structures:
lecture
printable
- Dynamic Programming:
lecture
printable
- Greedy Algorithms:
lecture
printable
- B-Trees:
lecture
printable
- Amortized Analysis:
lecture
printable
- Binomial Queues and Fibonacci Heaps:
lecture
printable
- Disjoint Sets:
lecture
printable
- Graphs:
lecture
printable
- Graphs II: Spanning Trees
lecture
printable
- Graphs III: Shortest Paths
lecture
printable
- Flow Networks
lecture
printable
- Computational Geometry
lecture
printable
- String Matching
lecture
printable
- NP Completeness
lecture
printable
- Compression
lecture
- Review
lecture
printable