Syllabus

CS2201 DATA STRUCTURES

 

AIM:

To master the design and applications of linear, tree, balanced tree, hashing, set, and graph structures.

 

UNIT I             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

 

UNIT II            TREE 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 – Threaded Binary Trees.

 

UNIT III           BALANCED TREES

AVL Trees – Splay Trees – B-Tree - heaps – binary heaps – applications of binary heaps

 

UNIT IV           HASHING AND SET

Hashing – Separate chaining – open addressing – rehashing – extendible hashing - Disjoint Set ADT – dynamic equivalence problem – smart union algorithms – path compression – applications of Set

 

UNIT V            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

 

TEXT BOOK

1.    M. A. Weiss, “Data Structures and Algorithm Analysis in C”, Second Edition, Pearson Education, 2005.

 

REFERENCES

1.    V. Aho, J. E. Hopcroft, and J. D. Ullman, “Data Structures and Algorithms”, Pearson Education, First Edition Reprint 2003.

2.       R. F. Gilberg, B. A. Forouzan, “Data Structures”, Second Edition, Thomson India Edition, 2005.