Course Schedule

Refer to this page daily for updates. This is a dynamic schedule (except for the labs); only the past is certain.

WeekDayDateTopicReading DueAssignment Due
1MonAug 21Introduction
WedAug 23Syllabus, algorithm design & analysis overviewChapter 1
ThuAug 24R1: LaTeX and pseudocode
FriAug 25Proof review
2MonAug 28Proof by induction
WedAug 30Insertion sort: pseudocode and efficiency2.2
ThuAug 31R2: Proof practice
FriSep 1Insertion sort: loop invariants and correctness2.1
3MonSep 4Insertion sort: proving loop invariants
WedSep 6Asymptotic notation3.1-3.3Homework 1 (latex)
ThuSep 7R3: Asymptotic time complexity
FriSep 8Asymptotic notation, cont.
4MonSep 11Divide and Conquer, recurrences2.34.3-4.4Homework 2 (latex)
WedSep 13Away – attend other section
ThuSep 14R4: Cancelled
FriSep 15Away – attend other section
5MonSep 18One last recurrence…
WedSep 20Quicksort7.1-7.2Homework 3 (latex)
ThuSep 21R5: Divide and Conquer algorithms
FriSep 22Sorting lower bound8.1
6MonSep 25The closest pair problemClosest pair | reading notes
WedSep 27Dynamic programming: Fibonacci, rod cutting14.1
ThuSep 28R6: Rod cutting, cont.
FriSep 29Matrix chain multiplication14.2Homework 4
7MonOct 2Elements of dynamic programming14.3
WedOct 4
ThuOct 5R7: DP problemsHomework 5
FriOct 6Exam 1
8MonOct 9NO CLASS — FALL BREAK
WedOct 11Longest common subsequence14.4
ThuOct 12R8: Knapsack problem
FriOct 13Knapsack problem
9MonOct 16Sequence alignmentSequence alignment | reading notes
WedOct 18Global and local alignment
ThuOct 19R9: Homework help
FriOct 20Greedy algorithms, activity selection15.1Homework 6
10MonOct 23Elements of greedy algorithms15.2
WedOct 25Huffman coding15.3Homework 7
ThuOct 26R10: Greedy algorithms
FriOct 27Graphs20.1, B.4
11MonOct 30Breadth-first search (BFS)20.2-3Homework 8
WedNov 1Depth-first search (DFS) and topological sort20.4
ThuNov 2R11:
FriNov 3Minimum spanning trees (MST)21.1
12MonNov 6Prim MST algorithm21.2
WedNov 8Exam 2
ThuNov 9R12: Strongly connected components
FriNov 10Tangent: heaps and priority queues6.1-2, 6.5
13MonNov 13Kruskal’s MST algorithm
WedNov 15Single source shortest paths, Bellman-Ford22.1
ThuNov 16R13:
FriNov 17Dijkstra’s algorithm22.3
Nov 20-24NO CLASS —  THANKSGIVING BREAK
14MonNov 27Maximum flow and the Ford-Fulkerson method24.1-2
WedNov 29Max-flow min-cut theoremArticle 1 | Article 2 (skim first 2 pages)Homework 9
ThuNov 30R14: Applications of maximum flow24.3
FriDec 1Hard problems: P and NPpp. 1042-1047
MonDec 4UndecidabilityHomework 10
ThuDec 14Final Exam (8:00-11:00)