This page contains the schedule of lectures, reading assignments, and exams for CMPSCI 311 in Fall 2006. You should read the assigned sections of the text (Kleinberg and Tardos, Algorithm Design, before class. Lectures are MWF at 1:25-2:15 in room A301, LGRC (the low-rise). Discussion meetings are Monday 2:30-3:20 for section "AD01" and Wednesday 2:30-3:20 for section "BD01" or "AD02" (I've seen both names used), both in room A203, LGRC. The first discussion meetings will be on 11 and 13 September.
PART I: Basic Analysis Tools, Greedy Algorithms Wed 06 Sep L01 Stable Matching (1.1) Fri 08 Sep L02 Five Representative Problems (1.2) Mon 11 Sep L03 Big-O Notation and Running Time (2.1,2.2) M/W 11 Sep D01 Proofs Using Big-O (also 13 Sep) Wed 13 Sep L04 Implementing Stable Matching; Common Running Times (2.3,2.4) Fri 15 Sep L05 Priority Queues (2.5) Mon 18 Sep L06 Basics of Graphs, Paths, and Traversals (3.1,3.2) M/W 18 Sep D02 Depth-First Search (also 20 Sep) Wed 20 Sep L07 Breadth-First and Depth-First Search (3.3,3.4) Fri 22 Sep L08 Connectivity and Topological Ordering (3.5,3.6) Mon 25 Sep L09 Interval Scheduling (4.1) M/W 25 Sep D03 A Greedy Algorithm Example (also 27 Sep) Wed 27 Sep L10 Exchange Argurments (4.2) Fri 29 Sep L11 Shortest Paths in a Graph (4.4) Mon 02 Oct L12 The Minimum Spanning Tree Problem (4.5) M/W 02 Oct D04 Huffman Codes (4.8) (also 4 Oct) Wed 04 Oct L13 Kruskal's Algorithm and the Union-Find Data Structure (4.6) Thu 05 Oct X01 EVENING EXAM on Chapters 1-4 PART II: Three Algorithmic Paradigms Fri 06 Oct L14 Recurrence Relations and Mergesort (5.1,5.2) Mon 09 Oct --- NO CLASS -- Columbus Day (no discussion this week) Wed 11 Oct L15 Counting Inversions (5.3) (Monday Schedule) Fri 13 Oct L16 Finding the Closest Pair of Points (5.4) Mon 16 Oct L17 Weighted Interval Scheduling (6.1) M/W 16 Oct D05 Fast Integer Multiplication (5.5) (also 18 Oct) Wed 18 Oct L18 Dynamic Programming: Segmented Least Squares (6.2,6.3) Fri 20 Oct L19 Subset Sums and Knapsacks (6.4) Mon 23 Oct L20 Sequence Alignment (6.6,6.7) M/W 23 Oct D06 Another Dynamic Programming Example (also 25 Oct) Wed 25 Oct L21 Shortest Paths in Graphs Again (6.8,6.9) Fri 27 Oct L22 The Maximum Flow Problem and a First Solution (7.1) Mon 30 Oct L23 The Min-Cut Max-Flow Theorem (7.2) M/W 30 Oct D07 Modeling School Scheduling (also 1 Nov) Wed 01 Nov L24 Choosing Good Augmenting Paths (7.3) Fri 03 Nov L25 The Bipartite Matching Problem (7.5) Mon 06 Nov L26 Two More Network Flow Examples (7.9,7.12) M/W 06 Nov D08 Where Network Flow Doesn't Help (also 8 Nov) Thu 09 Nov X02 EVENING EXAM on Chapters 5-7 PART III: NP-Completeness and Dealing With It Wed 08 Nov L27 Polynomial-Time Reductions (8.1) (before Exam II, not on it) Fri 10 Nov L28 NP, Satisfiability, and Reductions (8.2,8.3) Mon 13 Nov L29 NP-Complete Problems (8.4) M/W 13 Nov D09 An NP-Completeness Proof (also 15 Nov) Wed 15 Nov L30 Sequencing Problems (8.5) Fri 17 Nov L31 Partitioning and Numerical Problems (8.6,8.8) Mon 20 Nov L32 Graph Coloring (8.7) M/W 20 Nov --- NO DISCUSSION this week Wed 22 Nov L33 The Class PSPACE (9.1,9.2) Fri 24 Nov --- NO CLASS -- Thanksgiving Holiday Mon 27 Nov L34 Finding Small Vertex Covers (10.1) M/W 27 Nov D10 Finding Small Hitting Sets (also 29 Nov) Wed 29 Nov L35 Solving NP-Hard Problems on Trees (10.2) Fri 01 Dec L36 Load Balancing and Center Selection (11.1,11.2) Mon 04 Dec L37 A Greedy Heuristic For Set Cover (11.3) M/W 04 Dec D11 Bin-Packing (also 6 Dec) Wed 06 Dec L38 The Pricing Method: Vertex Cover (11.4) Fri 08 Dec L39 Local Search (12.1,12.2) Mon 11 Dec L40 Randomized Algorithms (13.1,13.4) M/W 11 Dec D12 Course Evaluations (also 13 Dec) Wed 13 Dec L41 Review and Coming Attractions FINAL EXAM during exam period as scheduled by the University
Last modified 1 September 2006