Course Code: CS206M Course Name: Data Structure And Algorithm Prerequisites: NIL Syllabus: Review of fundamental Data Structures Models of Computation: random access machines, space and time complexity measures, lower and upper bounds Design techniques: the greedy method, divide-and-conquer, dynamic programming, backtracking Sorting and Searching Graph algorithms Hashing: separate chaining, linear probing, quadratic probing Search Trees: binary search trees, AVL trees, B-trees NP-completeness. Texts: 1. T H Cormen, C E Leiserson, R L Rivest and C Stein, Introduction to Algorithms, 3/e, MIT Press, 2009. 2. Jon Kleinberg and Eva Tardos, Algorithm Design, 1/e, Pearson Education, 2006. References: 1. S Sahni, Data Structures, Algorithms and Applications in C++, McGraw-Hill, 2001. 2. M T Goodrich and R Tamassia, Algorithm Design: Foundations, Analysis and Internet Examples, John Wiley & Sons, 2001. |