UNIT I
Introduction to data structures, Abstract Data Type (ADT), representation and
implementation, time and space requirements of algorithms. Array ADT, representing
polynomials, sparse matrices using arrays and their operations Stacks and Queues:
Representation and application, implementation of stack and queue operations using C.
UNIT II
Linked lists: Single linked lists, implementation of link list and various operation using
C, double linked list, circular list and applications.
UNIT III: TREES
Trees: Basic Terminology in Trees, Binary Trees-Properties, Representation of Binary Trees
using Arrays and Linked lists. Binary Search Trees- Basic Concepts, BST Operations:
Insertion, Deletion, Tree Traversals, Applications-Expression Trees, Heap Sort, Balanced
Binary Trees, AVL Trees, Insertion, Deletion and Rotations.
UNIT IV: GRAPHS
Graph terminology, representation of graphs, path matrix, BFS (breadth first search),
DFS (depth first search), topological sorting, shortest path algorithms. Priority Queues:
Heap structures, binomial heaps, leftist heaps.
UNIT V: SORTING AND SEARCHING TECHNIQUES
Bubble sort, selection sort, insertion sort, quick sort, merge sort, heap sort, radix sort
and implementation. Linear and binary search methods, implementation; Hashing
techniques and hash functions.
TEXTBOOKS
1. “Data Structure -- A Pseudo code approach with C” by Richard R. Gilberg &
Behrouz A. Forouzan, 2 edition, 2011. Cengage Learning. Imprint: Thomson
nd
Press (India) Ltd.
2. “Data Structures Using C” by Aaron M. Tanenbaum, Yedidvah Langsam, and
Moshe J. Augenstein. Pearson Publishers, 2019.