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/13: #1 & #4 - Introduction to Course, Review of Basic Data Structures
Tue 01/14: Review of proof techniques
Wed 01/15: #3 Growth of Functions and Asymptotic Concepts
Week 2: Algorithm Correctness and Analysis
Week 3: Divide & Conquer and Analysis of Recurrences, Heaps and Priority Queues
Mon 01/27:#7 - Divide & Conquer and Analysis of Recurrences:
Reading: CLRS Sections 2.3, 4.1 & 4.3-4.5
Lecture Notes: Topic 07
Screencasts: 02D (in Laulima), 02E (in Laulima),
07A,
07B,
07C,
07D
(Additional Screencasts): MIT Lecture 02 (16:51-end),
MIT Lecture 03 (through about 13:07 — we don't cover Strassen or Fibonacci numbers).
Tue 01/28:
Wed 01/29: #9 - Heap, Heapsort and Priority Queues:
Week 4: Binary Search Trees
Week 5: Probabilistic Analysis and Randomized Algorithms
Week 7: Selection, Sorting Lower Bound and Linear Sorting
Mon 02/24: #10a - Selection and Order Statistics:
Tue 02/25:
Wed 02/26: #10b - Theoretical Limits, and O(n) Sorts:
Week 9: Dynamic Programming
Week 10: Greedy Algorithms and Basic Graph Algorithms
Mon 03/23: #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/24:
Wed 03/25: #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).
Thur 03/26: HOLIDAY
Week 11: Topological Sort, SCC, Union-Find, MST
Mon 03/30: #14B - Topological Sort, and Strongly Connected Components:
Tue 03/31:
Wed 04/01: #16 & #17 - Disjoint Sets, Union-Find & Minimum Spanning Trees:
Reading: CLRS Sections 21.1-21.3. Also see Lemma 21.11, 21.12, 21.13 and Theorem 21.14
Lecture Notes: Topic 16 (skip Linked List representation: Forest is much better), Topic 17 Notes
Screencasts:
17A,
17B,
17C
(Additional Screencasts): MIT Lecture 16 (from minute 23:26).
Week 12: Finding Shortest Paths in Graphs
Mon 04/06: #18 - Single-Source Shortest Paths:
Tue 04/07:
Wed 04/08: #19 - All-Pairs Shortest Paths:
Fri 04/10: HOLIDAY - No office hours
Week 14: Maximum Flow in Graphs
Mon 04/20: #20 - Maximum Flow:
Tue 04/21: Midterm 2 review
Wed 04/22: #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)
|