CS 227 W '06
A posteriori Syllabus
  and
READINGS

This page contains more explicit reading recommendations on a weekly basis
as well as an a posteriori syllabus.

Week 1.
  Day 1 Overview of course
        Algorithms desiderata
	Max score s.t. weight constraints 
        Late HW policy and reciprocal of Harmonic #
	Max and min
           2n-2 iterative method
	  (3n/2) by D&C recusively	   
  Day 2 M and m - iteratively (3n/2)
        Divide and Conquer
	Recurrence relations
        C(n) and M(n)
	   growth of functions defs

READINGS
  Appendix A, skim from A.1 through A.6 for what you need for the homework
  Appendix B, B.1, B. 2 and B.3 are very relevant to the homework
	      skip B.4	for now 
  Chap. 1: 1.1, 1.2.1, 1.3.1, 1.4.1
  Chap. 2: 2.1,2.2,2.3	        
	   
Week 2
  Day 3
    More on D&C and RRs
	growth of functions
	   proofs from defs
	   proofs from Th. 1.3
	HO on harmonic #  is theta ln n 
  Day 4
    HO on hw #19
    Correctness
    Ex.	  a^n by D& C
	     recursively
	     iteratively
    HO int sqrt
    HW peasant mult	     
  Day 5
    Fib #s
       f(n) = O(n) does not imply 2^f =O(2^n) (#19 on PQ#1)
       Closed form sol. by char eq
       Seven ways to compute Fib(n)
    On char eqs   
READINGS: Appendice B1,2,3
          Ch1, incl 1.3.3 on correctness
	  Ch 2 1,2,3,4,8
	  
Week 3
  Day 6
     HO Binary Search Loop
     HO #20g)
        by stuffung, by char eq, by Master Th.
     A Master Th. 
     Sorting
        Bozo
	Quick
	   Average time	 	   
Day 7 
  HO on #12b
  Comparison of comparisn sorts
  Lower bound for sorting
  binsort
  comparison networks 
Day 8
  bitonic merge sort
  DP: coin game, corner bar prob 

READINGS
   App B2,3,4
   Ch 7 Sorting
   start reading in Ch. 7  	    
   You can find material on sorting networks, e.g. bitonic sort
     on the web or in CLRS 
     
Week 4
   Day 9
      Dynamic Programming
         HO: get a job
         Matrix Chain Multiplication
	 #of pairings, binary seach trees, triangulations, etc.
   Day 10
      Hand-outs
         Derivation of Catalan #'s
	 k-way merge sort on disks
	 DP dice game in mathematica
	 Strassen multiplication
      Also
         #of mults in DP to min # of mults in MCM
	 Sterling's approx to Catalan
	 Brachistochone problem	
   Day 11
      Greedy Method
      Tunes on a Tape 1,3
      Huffman Codes
      Zipf-Huffman hw
READINGS: 
   App. A.8 on probability 
   Ch. 3 on DP, esp. 3.3,3.4,3.5
   Ch. 4 on GM, esp. 4.1,4.44.5
   
Week 5
   Day 12
      Coins
      MCST - DFS, Prim's, Kruskal's
         proof, ISETL code for Prim's
      results on Prog 3
   Day 13
      Review
      Knapsack problems
         greedy, DP, B&B  
   Day 14
      In-class midterm test
      
READINGS thru midterm:
  In the text:
    Ch. 1
    Ch. 2
    Ch. 3, except 3.2,3.6
    Ch. 4, except 4.2, 4.3
    Ch. 6, 6.1
    Ch. 7
    App. A
    App. B.
  Some things not in the text
    Correctness
    Comparison Networks  
    Greedy proofs
    
  Week 6
     Midterm Break
     Day 15
        Exhaustion
	   all T/F, all 0/1, all sets, all permuations
	   iteratively and recursively
	Shuffing
	   Backchecking
	   Bozo
	   Bozo, corrected
	   ONE RNG (with factorial base)
      Day 16
         Riffle Shuffles, perfect and imperfect
	 Random # Generation
	    by physical means
	    mid-square method
	    Linear Congruential Method
	 Chi-square test
	 Random Trees based on recurrence relation
      READINGS
         Ch. 5 - Backtracking
	 Ch. B & B
	 On RNG's
	    Knuth vol 2	    
	    	       
    Week 7  
      Day 17
        Backtracking
      Day 18	
	Searching, Hashing
      Day 19	
	Computational Geometry	
      READINGS  
        Ch. 5 Backtraking
	Ch. 8 Searching	
	
    Week 8
      Day 20
        convex hull
	linear programming
      Day 21
        worst case gcd is inverse Fibonacci
	decision v. optimization
	knapsack encryption
	RSA encryption
	5 HOs
      Day 22	
        more on mod inverses
	max flow, min cut
      READINGS
        Ch. 10, except 10.3.3 and 10.4 (unless you've had 236) 
	In CLRS on max flow 26.1,2,3
	
     Week 9
       Day 23
         MF, LP
	 matching, assignment
         KOP, KDP
	 redudctions
	 P, NP
       Day 24
         Planarity, 
	 SAT, reductions, CDP
	 NP-complete
       Day 25
         TBA
       READINGS
          in N & N, Ch. 9, pp375-400
	  	 
     Week 10
       Day 26
         Scheduling
       Day 27
         Code Optimization
       Day 28
         In class Quiz
	 
     Week 11
       Last Day of Exams
         Carry-out Quiz due