Course info
Lectures
Homeworks
Staff Schedule
Piazza
|
Course info:
Click here for info on the course
content, text, grading, exams, etc.; See
sidebar for quick links.
Online discussion site:
We will conduct discussions via Piazza.
Announcements
- 12/3: Shuchi's office hours are canceled for today.
- 11/6: The office hours schedule has changed. The new
schedule is effective 11/7. Please see this for the new schedule.
- 10/11: Please note that HW3 is due on 10/23, and not
10/25.
- 10/10: Question 1 on HW2 had a slight error that has now
been corrected. A corrected version is posted here.
Schedule and readings
The following is a tentative list of topics and a collection of
material relevant to lectures. More information and links will be
added as the semester proceeds.
Date
|
Lec #
|
Topic
|
Readings/Notes/Slides
|
Homework/Other Info
|
9/4
|
1
|
Intro; Stable marriage
|
§1, §2, slides
|
HW0 out
|
9/6
|
2
|
Divide & Conquer algorithms: searching and sorting
|
§2, §5.1, §5.2
|
Sol0 out
|
9/11
|
3
|
D&C: counting inversions, closest pair of points, sorting lower bound
|
§5.3, inversions demo, §
5.4, lecture notes
|
|
9/13
|
4
|
D&C: linear time selection, integer multiplication
|
§5.5, lecture notes, selection demo
|
HW1 out
|
9/18
|
5
|
Graph connectivity & traversal: BFS, DFS
|
§3, BFS demo, DFS demo
|
|
9/20
|
6
|
Shortest paths in graphs
|
§4.4, Dijkstra demo
|
|
9/25
|
7
|
Dijkstra's algorithm contd., Greedy algorithms: interval scheduling,
minimizing lateness
|
§4.1, 4.2, Interval scheduling demo
|
|
9/27
|
8
|
Greedy: Minimum spanning trees
|
§4.5, 4.6, Prim demo, Kruskal demo
|
HW1 due, HW2 out
|
10/2
|
9
|
Greedy: Union-find data structure, Huffman codes
|
§4.6, 4.8, Huffman demo
|
|
10/4
|
10
|
Dynamic programming: weighted interval scheduling
|
§6.1, 6.2
|
|
10/9
|
11
|
DP: Knapsack, RNA secondary structure
|
§6.4, 6.5
|
|
10/11
|
12
|
DP: Sequence alignment
|
§6.6, 6.7
|
HW2 due, HW3 out
|
10/16
|
13
|
DP: Shortest paths revisited
|
§6.8, 6.10
|
|
10/18
|
14
|
Network flow
|
§7.1, 7.2
|
|
10/23
|
15
|
Network flow: analysis of Ford-Fulkerson, Edmonds Karp
|
§7.3, handout
|
HW3 due
|
10/25
|
16
|
Applications of network flow: maximum matching
|
§7.5, 7.6, 7.7
|
|
10/30
|
17
|
More applications and extensions of network flow
|
§7.7, 7.8, 7.9
|
HW4 out
|
11/1
|
18
|
Applications of minimum cut
|
§7.10, 7.11
|
|
11/6
|
19
|
Randomized algorithms, min-cut revisited
|
§13.2, 13.12, 13.3
|
|
11/8
|
20
|
Random variables, Quicksort, Quickselect
|
§13.3, 13.5
|
|
11/13
|
21
|
Quicksort contd., Hashing
|
§13.5, 13.6
|
HW5 out, HW4 due
|
11/15
|
22
|
Hashing, Closest pair of points revisited
|
§13.6, 13.7
|
|
11/20
|
23
|
Randomization wrap-up, reductions
|
§8.1
|
|
11/27
|
24
|
P and NP, Co-NP, NP-Completeness
|
§8.3, 8.9, 8.4
|
|
11/29
|
25
|
NP-Completeness, Cook-Levin theorem, Satisfiability
|
§8.4, 8.2
|
HW6 out, HW5 due
|
12/4
|
26
|
Some NP-Complete problems
|
§8.5, 8.6
|
|
12/6
|
27
|
More NP-Complete problems, approximation
|
§8.7, 8.8
|
|
12/11
|
28
|
TBA
|
|
|
12/13
|
29
|
TBA
|
|
HW6 due
|
|