I: Linear Data Structures - List Abstract Data Types (ADTs) - List ADT - array -based implementation - linked list implementation - singly linked lists - Circularly linked lists - doubly linked lists - applications of lists - polynomial Manipulation - All operations (Insertion, Deletion, Merge, Traversal). II: Linear Data Structures - Stacks, Queues Stack ADT - Operations - Applications - Evaluating arithmetic expressions - Conversion of inifx to postfix expression - Queue ADT - Operations - Circular Queue - Priority Queue - deQueue - applications of queues. III: Non Linear Data Structures - Trees Tree ADT - tree traversals - Binary Tree ADT - expression trees - applications of trees - binary search tree ADT - Threaded Binary Trees - AVL Trees - B –Tree - B+Tree - Heap - Applications of heap. IV: Non Linear Data Structures - Graphs Definition - Representation of Graph - Types of graph - Breadth first traversal - Depth -first traversal - Topological Sort - Bi-connectivity - Cut vertex - Euler circuits - Applications of graphs. V: Searching, Sorting and Hashing Techniques Searching Linear Search - Binary Search. Sorting - Bubble sort - Selection sort - insertion sort - Shell sort - Radix sort. Hashing - Hash Functions - Separate Chaining - Open Addressing - Rehashing - Extendible Hashing.