Link Search Menu Expand Document

To keep this from being too cluttered, office hours are not included here. See the Office Hours / Staff tab.

Mon, Jun 20
Lecture 1: Welcome / Asymptotic Analysis
Release Prehomework 1
Wed, Jun 22
Lecture 2: Karatsuba / MergeSort
Release Homework 1
Fri, Jun 24
Session 1
Session 1
Mon, Jun 27
Lecture 3: k-Select / Radix Sort and the Limits of Sorting
Release Prehomework 2
DuePrehomework 1
Wed, Jun 29
Lecture 4: Randomized Algorithms and QuickSort / Karger's Algorithm
Thu, Jun 30
Release Homework 2
DueHomework 1
Fri, Jul 1
Session 2
Session 2
Wed, Jul 6
Lecture 5: Universal Hashing / Bloom Filters
Release Prehomework 3
DuePrehomework 2
Fri, Jul 8
Lecture 6: Heaps and Priority Queues / Self-Balancing Binary Trees
Sun, Jul 10
Release Homework 3
DueHomework 2
Mon, Jul 11
Session 3
Session 3
Wed, Jul 13
Lecture 7: Graphs, BFS / Dijkstra's
Release Prehomework 4
DuePrehomework 3
Fri, Jul 15
Lecture 8: DFS and Topological Sort / Kosaraju's Algorithm
Sun, Jul 17
DueHomework 3
Mon, Jul 18
Session 4
Session 4
Wed, Jul 20
Lecture 9: Midterm Review
Fri, Jul 22
Release Homework 4
Exam 1: Midterm
Sat, Jul 23
DuePrehomework 4
Mon, Jul 25
Lecture 10: Bellman-Ford / Dynamic Programming
Wed, Jul 27
Lecture 11: Edit Distance, Knapsack
Release Prehomework 5
Fri, Jul 29
Session 5
Session 5
Release Homework 5
Sat, Jul 30
DueHomework 4
Mon, Aug 1
Lecture 12: Spanning Trees / Greedy Algorithms
Wed, Aug 3
Lecture 13: Maximum Flow / Bipartite Matching
Release Prehomework 6
DuePrehomework 5
Fri, Aug 5
Session 6
Session 6
Release Homework 6
Sat, Aug 6
DueHomework 5
Wed, Aug 10
Lecture 14: Final Review
DuePrehomework 6
Thu, Aug 11
DueHomework 6
Fri, Aug 12
Exam 2: Final