Assignments | Course Home | Schedule & Lecture Notes

Saint Louis University

Computer Science 314

Michael Goldwasser

Spring 2007

Dept. of Math & Computer Science


Please note that the schedule for future classes is tentative.

Also note: For each lecture, we denote both a topic as well as the associated reading in the textbook. The live link on the 'topic' leads to a page of my personal notes for that lecture. Those personal notes are not nearly as complete or polished as the associated readings from the text. In truth, they exist mostly to provide a brief outline of the day's lecture. Students are expected to read the associated sections of the text. In cases where my notes include material which is not explicitly in the text, I will add the word "notes" to the explicit reading list.

Week Day Topic Reading
Jan 16-Jan 19 Wed Stable Marriage Problem Ch. 1; pp. 1-5
Fri Gale-Shapley Algorithm for Stable Marriage Ch. 1; pp. 5-12
Jan 22-Jan 26 Mon Further properties of stable marriages;
Analysis of Gale-Shapley implementation
End of Ch. 1.1;
Ch. 2.3
Wed Basics of Algorithm Analysis Ch. 2
Fri Priority Queues Ch. 2.5
Jan 29-Feb 2 Mon Introduction to Graphs
Graph Connectivity
Ch. 3.1
Wed Graph Traversals
Ch. 3.2
Fri Traversal Implementations Ch. 3.3
Feb 5-Feb 9 Mon Other Graph Properties; Directed Graphs Ch. 3.4, 3.5
Wed Strong Connectivity; Topological Ordering Ch. 3.5, 3.6
Fri Greedy Algorithms
Interval Scheduling
Ch. 4.1
Feb 12-Feb 16 Mon more iterval scheduling Ch. 4.1
Wed Scheduling to Minimize Lateness Ch. 4.2
Fri review
Feb 19-Feb 23 Mon Shortest Paths and Dijkstra's algorithm Ch. 4.4
Wed Minimum Spanning Trees Ch. 4.5
Fri Minimum Spanning Trees (continued) Ch. 4.5
Feb 26-Mar 2 Mon Implementing Kruskal's algorithm
Union-Find data structure
Ch. 4.6
Wed Huffman Encoding Ch. 4.8
Fri Huffman Encoding (continued) Ch. 4.8
Mar 5-Mar 9 Mon Mergesort and Recurrence Relations Ch. 5.1
Wed More Recurrence Relations Ch. 5.2
Fri Midterm Exam - info
Mar 12-Mar 16 Mon No Class: Spring Break
Mar 19-Mar 23 Mon Closest Pair Ch. 5.4
Wed Weighted Interval Scheduling
Dynamic Programming
Ch. 6.1
Fri Dynamic Programming Ch. 6.2
Mar 26-Mar 30 Mon Segmented Least Squares Ch. 6.3
Wed Subset-Sum/Knapsack Ch. 6.4
Fri Subset-Sum/Knapsack (continued)
(Python code)
Ch. 6.4
Apr 2-Apr 6 Mon RNA Secondary Structure Ch. 6.5
Wed RNA Secondary Structure (Python code) Ch. 6.5
Fri No Class: Good Friday
Apr 9-Apr 13 Mon Sequence Alignment Problem Ch. 6.6
Wed Sequence Alignment with Linear Space Ch. 6.7
Fri Network Flows Ch. 7.1
Apr 16-Apr 20 Mon Ford-Fulkerson Algorithm Ch. 7.2
Wed Choosing Good Augmenting Paths Ch. 7.3
Fri Network Flow Applications Ch. 7.5, 7.6
Apr 23-Apr 27 Mon Network Flow Applications Ch. 7.11, 7.12
Wed Polynomial-Time Reductions Ch. 8.1, 8.2
Apr 30-May 4 Mon

13 May 2008
Final Exam - take-home

Michael Goldwasser
CSCI 314, Spring 2007
Last modified: Thursday, 17 January 2008
Assignments | Course Home | Schedule & Lecture Notes