Instructor Huacheng Yu
Lectures Monday/Wednesday 10:40-12:00pm
TAs Zhongtian He, Ilya Maier, Pachara Sawettamalya
Location Lewis Library 120
Office hours Huacheng: Monday 1:30-3:30pm @ CS310

For course description, grading policy, etc., please see the course infosheet.

Ed

We will use Ed for course discussion. The link is: https://edstem.org/us/courses/95086/discussion. If you are enrolled in the course, you should have access to Ed. Please email the instructor if you cannot access Ed.

Grading

You earn five points of participation for attending each 1-1 coaching sessions. You may earn up to 40 points this way. There will be two in-class Midterms, and a scheduled Final. Suppose you earn p participation points, get m1, m2 points from the two Midterms respectively and f points from the Final. Then your grade is p + (1-p/100)(min(m1,m2)/6+max(m1,m2)/3+f/2).

Homework

Homeworks will be posted below when they become available.

Supplemental reading and related courses

Lecture notes and schedule

Below is a tentative schedule.

LectureDateTopicNotesSupplemental reading
Graph Algorithms
1/26Cancelled
11/28Minimum spanning trees ILecture 1CLRS Chapter 23, KT Chapter 4.5
COS 423 Lecture on "Minimum Spanning Trees"
22/2Minimum spanning trees IILecture 2COS 423 Lecture on "Minimum Spanning Trees Faster"
David Karger, Philip Klein, Robert Tarjan. "A randomized linear-time algorithm to find minimum spanning trees".
32/4Shortest pathsLecture 3CLRS Chapter 25
MIT 6.046J Lecture 11, NEU CS5800 Lecture 12
42/9MatchingsLecture 4CLRS Chapter 26.3, KT Chapter 7.5
COS 423 Lecture on "Graph Matching"
52/11Matchings IILecture 5COS 423 Lecture on "Nonbipartite Matching"
CMU 15-451/651 v3 Lecture 11
62/16Strongly connected componentsLecture 6CLRS Chapter 22.5, KT Chapter 3.5
COS 423 Lecture on "Strong Components and Blocks"
CMU 15-451/651 v3 Lecture 9
NEU CS5800 Lecture 11
72/18Max flowLecture 7CLRS Chapter 26.4, KT Chapter 7.4
COS 423 Lecture on "Maximum Flow"
NEU CS5800 Lecture 13
2/23Midterm #1
2/25No lecture
83/2TBD
Data Structures
93/4Quadtree and KD tree
3/9Spring break
3/11Spring break
103/16Range trees
113/18Van Emde Boas trees
123/23Disjoint set union
133/25Fibonacci heap
143/30Splay trees
154/1Suffix trees and suffix arrays
4/6Midterm #2
Other Algorithmic Topics
164/8String matching algorithms
174/13Integer sorting algorithms
184/15Approximation algorithms
194/20External memory algorithms
204/22Cell-probe lower bounds