Design and Analysis of Algorithm
SPRING 2006, CS 4/56101
Tentative Schedule
Date
Notes
PDF
#
Topic
Tentative Deadlines

 L01 1 Introduction: Game of Life  


 L02 2 Algorithm Design Principals: Game of Life-2 A#1
SEP 02
 L03a 3 Recursion-I: Concepts: Fact., T. of Hanoi  
04
 L03b 4 Recursion-II: Principles: 8-queen, Tail Rec.  
11
 L04a 5 Review: Search: sequential & binary search  
13
 L04b 6 Analysis of bounds of current and future search algorithms A#2
18
 L05 7 Analysis Tools, Asymptotics, comparison trees, Big-Oh  
20
 L06 8 Sorting I: insertion, selection, shell sort  
25   L07 9 Sorting II: merge sort, quick sort  
27  L08a 10 Sorting III: Random variables, binomial distribution A#3, PROJ-2
OCT 02
 L08b 11 Sorting IV: counting, radix and bucket sort  
04
 L09 12 Hashing-I: tables, index, hash functions, collision resolution, chaining, open addressing, linear and quadretic probing.  
09
  13 Hashing-II: analysis of chaining, linear, and random probing.
MIDTERM review
 
11
 L10a 14 Binary tree-I: treesearch, treesort A#4, PRO-2 DUE
16

15 MIDTERM
18  L10b 16 Binary tree-II: AVL tree, Fibonacci series  
23
 L11a 17 Binary tree-III: Splay tree, Amortization analysis PROJ-3 Prop Due.





25  L11b 18 Binary tree-IV: heapsort  
30

19  Priority queues
NOV 1
L12 20 Multiway Trees-I: trees, tries, B-trees A#5
06
  21 Multiway Trees: red-black trees  
08
 L13 22 Graphs-I: representation, traversal  
13   23 Graph-II: topological sorting, shortest path  
15
 L14 24 Graph-III: Min. spanning tree, All-pair shortest path  
20
 L15 25 String Matching-I: Rabin Karp algorithm
String Matching-II: Knuth-Morris-Prat algorithm
 



THANKS GIVING

27  L16 26 *Dynamic Programming: Chain Matrix
*Dynamic Programming: Optimum Triangulation
A#5 Due
Project  2 DUE
29   27 *Dyanmic Programming: 1/0 Knapsack
Review for Final
 
DEC 4
  28 FINAL PROJECT DEFENSE
 6    29 ENDTERM  



EXAM WEEK
* All assignments and projects are due at the delivery date of the next one.