EE2204-DATA STRUCTURES AND ALGORITHMS |
LINEAR STRUCTURES |
Abstract Data Types (ADT) List ADT array-based implementation linked list implementation cursor-based linked lists doubly-linked lists applications of lists Stack ADT Queue ADT circular queue implementation Applications of stacks and queues. |
TREE STRUCTURES |
Need for non-linear structures Tree ADT tree traversals left child right sibling data structures for general trees Binary Tree ADT expression trees applications of trees binary search tree ADT |
BALANCED SEARCH TREES AND INDEXING |
AVL trees Binary Heaps B-Tree Hashing Separate chaining open addressing Linear probing |
GRAPHS |
Definitions Topological sort breadth-first traversal - shortest-path algorithms minimum spanning tree Prim's and Kruskal's algorithms Depth-first traversal biconnectivity euler circuits applications of graphs |
ALGORITHM DESIGN AND ANALYSIS |
Greedy algorithms Divide and conquer Dynamic programming backtracking branch and bound Randomized algorithms algorithm analysis asymptotic notations recurrences NP-complete problems |
REFERENCE |
Text Books |
1.M. A. Weiss, Data Structures and Algorithm Analysis in C, Pearson Education Asia, 2002.
2.ISRD Group, Data Structures using C, Tata McGraw-Hill Publishing Company Ltd., 2006. |
Reference Books |
1.A. V. Aho, J. E. Hopcroft, and J. D. Ullman, Data Structures and Algorithms, Pearson Education, 1983.
2.R. F. Gilberg, B. A. Forouzan, Data Structures: A Pseudocode approach with C, Second Edition, Thomson India Edition, 2005.
3.Sara Baase and A. Van Gelder, Computer Algorithms, Third Edition, Pearson Education, 2000.
4.T. H. Cormen, C. E. Leiserson, R. L. Rivest, and C. Stein, "Introduction to algorithms", Second Edition, Prentice Hall of India Ltd, 2001. |
|