Classes are in Webster 101 and in POST 319. See the index page for categorical listings of all assignments and topics.
Week 1: Introduction and Basic Concepts (Mostly review of ICS 211, 141 and 241)
Mon 01/07: #1 & #4 - Introduction to Course, Review of Basic Data Structures
Tue 01/08: Review of proof techniques
Wed 01/09: #2 - Proving Correctness, Analyzing Algorithms
Week 2: Growth of Functions, Divide & Conquer, and Analysis of Recurrences
Week 3: Heaps and Priority Queues
Week 4: Binary Search Trees
Week 5: Probabilistic Analysis and Randomized Algorithms
Week 6: HashTables and Selection
Week 7: Sorting Lower Bound and Linear Sorting
Week 9: Dynamic Programming
Week 10: Greedy Algorithms and Basic Graph Algorithms
Mon 03/11: #13 - Greedy Algorithms & Huffman Codes:
Reading: CLRS Sections 16.1-16.3
Lecture Notes: Topic 13
Screencasts:
13A,
13B,
13C
(Additional Screencasts): MIT Lecture 16: only briefly mentioned at 48:16
Tue 03/12:
Wed 03/13: #14A - Graph Representations, Breadth-First Search, Depth-First Search:
Reading: CLRS Sections 22.1-22.3; Chapter 5 of Jeff Erickson's lecture notes; Goodrich & Tamassia section on Graph Representations (in Laulima)
Lecture Notes: Topic 14A
Screencasts:
14A,
14B,
14C,
14D,
14E
(Additional Screencasts): MIT Lecture 16 (till minute 23:26, the rest focuses on MST — next week's topic).
Week 11: Topological Sort, SCC, Union-Find, MST
Week 12: Finding Shortest Paths in Graphs
Week 14: Maximum Flow in Graphs
Mon 04/15: #20 - Maximum Flow:
Tue 04/16: Midterm 2 review
Wed 04/17: #20 - Maximum Flow (continued):
Week 15: NP-Completeness and Approximation Algorithms
Finals Week:
Final Exam: Cumulative on all topics (1-14, 16-20, 22, 24, & 25) in Webster 101
|