CS581: Schedule/Readings

Spring 2013


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

TENTATIVE ONLY. Subject to change. Check back frequently for updates.
Last updated: April 25, 2013

Date Topics Readings HW Assigned HW Due
Thurs. 1/10 TA lecture; instructor on travel
Introduction
   Asymptotic notation
Ch. 1, 3
HW 1  
Tues. 1/15 Divide and Conquer:
   Mergesort
Recurrences
     Recursion tree method
Ch. 2, 4.0, 4.4    
Thurs. 1/17 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/22 Divide and Conquer (con't.)
    Maximum subarray problem
Introduction to Dynamic Programming
   Rod cutting
Ch. 4.1, Ch. 15.1    
Thurs. 1/24 Dynamic Programming (con't.):
   Matrix-chain multiplication
Ch. 15.2 HW 3 HW 2
Tues. 1/29 Dynamic Programming (con't.)
   Elements of dynamic programming
   Longest common subsequence
Ch. 15.3 - 15.4    
Thurs. 1/31 Dynamic Programming (con't.):
   Optimal binary search trees
Ch. 15.5
 
HW 4 HW 3
Tues. 2/05 Review of Graph Algorithms
Dijkstra's (greedy) algorithm for SSSP
Ch. 22, 24.0, 24.2, 24.3    
Thurs. 2/07 Dynamic Programming (con't.):
   All-pairs shortest path
Ch. 25.1 HW 5 HW 4
Tues. 2/12 Dynamic Programming (con't.):
   Floyd-Worshall Algorithm
Ch. 25.2    
Thurs. 2/14 Greedy Algorithms
   Introduction
   Activity Selection
   Elements of greedy strategy
   Knapsack problems
Ch. 16.1, 16.2 HW 6 HW 5
Tues. 2/19 Greedy Algs (con't.):
   Huffman Codes
   Data Structures for Disjoint Sets
Ch. 16.3, Ch. 21    
Thurs. 2/21 Greedy Algorithms (con't.)
   Minimum Spanning Trees
Ch. 23   HW 6
Tues. 2/26 Class led by TA; instructor on travel
Review for Exam 1
     
Thurs. 2/28 Exam 1 (covers material through
    Dyn. Pgmg. & HW 1-6)
  HW 7  
Tues. 3/05 Discuss Exam #1 solutions
Greedy Algs (con't.):
  Maximum Flow
Ch. 26    
Thurs., 3/07 Greedy Algs (con't.):
  Maximum Flow (con't.)
Ch. 26 HW 8 HW 7
Tues. 3/12 Multithreaded Algorithms
  Introduction
Ch. 27.1    
Tues. 3/14 Multithreaded Algorithms (con'.t)
  Multithreaded matrix multiplication
  Multithreaded merge sort
Ch. 27.2, 27.3 HW 9 HW 8
Tues. 3/19 Number Theory/Encryption
  RSA public-key cryptosystem
  Elementary number theory
Ch. 31.7, 31.1    
Thurs. 3/21 Number Theory/Encryption (con't.)
  Greatest common divisor
  Modular arithmetic
  Euler's phi function
  Solving modular linear equations
  Powers of an element
  RSA encryption examples
Ch. 31.2-6 HW 10 HW 9
Tues. 3/26 No class; spring break
     
Thurs. 3/28 No class; spring break      
Tues. 4/02 Brief review for Exam 2
Randomized Algorithms
Ch. 5.1-5.3   HW 10
Thurs. 4/04 Exam 2
(covers material since Exam 1; HW 6-10)
     
Tues. 4/09 Discuss Exam #2 solutions
Randomized Algorithms (con't.)
    Randomized Quicksort
    Randomized Selection
 
 
Ch. 7
Ch. 9.2
   
Thurs. 4/11 Introduction to Approximation Algs.
Randomized Algs. (con't.)
    Randomized approx. for MAX-3-CNF
Ch. 35 (intro)
 
Ch. 35.4
HW 11  
Tues. 4/16 Linear Programming
  Introduction
  Standard form
Ch. 29.1    
Thurs. 4/18 Linear Programming (con't.)
  Slack form
  Formulating problems
  Simplex method
Ch. 29.2-29.3 HW 12 HW 11
Tues. 4/23 TA lecture; instructor on travel
Linear Programming (con't.)
  Duality
  Initial basic feasible solution
Ch. 29.4-29.5    
Thurs. 4/25 (Last class!)
Linear Programming (con'.t)
  LP in vertex cover approx. alg.
Wrap up course
Ch. 35.4    
Tues. 4/30, Noon No class, but homework is due at Noon     HW 12
Monday, 5/06
10:15AM - 12:15PM
Final Comprehensive Exam
(with primary emphasis on last 1/3 of class)