CS581: Schedule/Readings

Spring 2011


CS581 home page Syllabus Schedule/Readings Homework Assignments Exam Study Guides

TENTATIVE ONLY. Subject to change. Check back frequently for updates.
Last updated: May 3, 2011

Date Topics Readings HW Assigned HW Due
Thurs. 1/13 Introduction
   Asymptotic notation
Ch. 1, 3
HW 1  
Tues. 1/18 Divide and Conquer:
   Mergesort
Recurrences
     Recursion tree method
Ch. 2, 4.0, 4.4    
Thurs. 1/20 Master method
Divide and Conquer (con't.):
    Matrix multiplication
    Strassen's algorithm for matrix multiplication
Ch. 4.2, 4.5 HW 2 HW 1
Tues. 1/25 Divide and Conquer (con't.)
    Maximum subarray problem
Introduction to Dynamic Programming
   Rod cutting
Ch. 4.1, Ch. 15.1    
Thurs. 1/27 Dynamic Programming (con't.):
   Matrix-chain multiplication
Ch. 15.2 HW 3 HW 2
Tues. 2/01 Dynamic Programming (con't.)
   Elements of dynamic programming
   Longest common subsequence
Ch. 15.3 - 15.4    
Thurs. 2/03 Dynamic Programming (con't.):
   Optimal binary search trees
   In-class exercise: Assembly line scheduling
Ch. 15.5
 
HW 4 HW 3
Tues. 2/08 Review of Graph Algorithms
Dijkstra's (greedy) algorithm for SSSP
Ch. 22, 24.0, 24.2, 24.3    
Thurs. 2/10 Dynamic Programming (con't.):
   All-pairs shortest path
   Floyd-Worshall Algorithm
Ch. 25.1 - 25.2 HW 5 HW 4
Tues. 2/15 Greedy Algorithms
   Introduction
   Activity Selection
   Elements of greedy strategy
   Knapsack problems
Ch. 16.1 - 16.2    
Thurs. 2/17 Greedy Algs (con't.):
   Huffman Codes
Ch. 16.3   HW 5
Tues. 2/22 Exam 1 (covers material through
    Dyn. Pgmg. & HW 1-5)
  HW 6  
Thurs. 2/24 Greedy Algorithms (con't.)
   Data Structures for Disjoint Sets
   Minimum Spanning Trees
Ch. 21, 23    
Tues. 3/01 Review exam #1 solutions
Greedy Algs (con't.):
   Minimum Spanning Trees (con't.)
Ch. 26.1    
Thurs. 3/03 Greedy Algs (con't.):
   Maximum Flow
Ch. 26.2 HW 7 HW 6
Tues. 3/08 Greedy Algs (con't.):
  Maximum Flow (con't.)
Number Theory/Encryption
  RSA public-key cryptosystem
Ch. 31.7    
Thurs. 3/10 Number Theory/Encryption (con't.)
  Elementary number theory
  Greatest common divisor
  Modular arithmetic
  Euler's phi function
Ch. 31.1, 31.2, 31.3 HW 8 HW 7
Tues. 3/15 No class; spring break
     
Thurs. 3/17 No class; spring break
     
Tues. 3/22 No lecture. Instructor on research travel.
GTA to present additional examples.
     
Thurs. 3/24 Number Theory/Encryption (con't.)
  Solving modular linear equations
  Powers of an element
  RSA encryption examples
Intro. to Computational Geometry
Ch. 31.4, 31.6 HW 9 HW 8
Tues. 3/29 Computational Geometry
  Line-segment properties
  Segment intersections
Ch. 33.1-33.2    
Thurs. 3/31 Computational Geometry (con't.)
  Convex hull
  Closest pair of points
Ch. 33.3-33.4   HW 9
Tues. 4/05 Multithreaded Algorithms
  Introduction
Ch. 27.1    
Thurs. 4/07 Exam 2 (covers material on greedy algs. thru
number theory/encryption, HW 6-9)
  HW 10  
Tues. 4/12 Review Exam #2
Multithreaded Algorithms (con'.t)
  Multithreaded matrix multiplication
  Multithreaded merge sort
Ch. 27.2    
Thurs. 4/14 No lecture. Instructor on research travel.
Come to class to turn in homework
and pick up next homework.
  HW 11 HW 10
Tues. 4/19 Multithreaded Algorithms (con'.t)
  Multithreaded merge sort
NP-completeness
  Introduction
  Complexity classes P and NP
Ch. 27.3

Ch. 34 intro.
   
Thurs. 4/21 NP-completeness (con't).
  Reducibility
  Circuit-SAT
Ch. 34.1-34.3 HW 12 HW 11
Tues. 4/26 NP-completeness (con't.)
  SAT
  3-CNF-SAT
Ch. 34.4    
Thurs. 4/28 NP-completeness (con't)
  Clique
  Vertex Cover
Approximation Algs.
  Introduction
  Approx. for Vertex Cover
Ch. 34.5


Ch. 35.0-35.1
  HW 12
Monday, 5/09
5:00 - 7:00 PM
Final Comprehensive Exam
(with primary emphasis on last 1/3 of class)