Classification of Data Structures:
Primitive and Non- Primitive' Linear and Nonlinear; Data structure Operations, ADT, Array as ADT, Operations - Insert, Delete, Search, Sort, String Definition, Representation, String as ADT, Operations - Insert, Delete, Concatenate, Comparing, Substring.
Stack:
Definition, Representation, Stack as ADT, Operations and Applications: Polish and reverse polish expressions, Infix to postfix conversion, evaluation of postfix expression, infix to prefix, postfix to infixconversion;
Recursion -
Recursive definition and processes, Properties of recursive definition or Algorithm, Recursive algorithms: Factorial, GCD,Fibonacci Sequence, Tower ofHanoi.
Queue:
Definition, Representation, Queue as ADT, Operations, Queue Variants: Circular Queue, Priority Queue, Double Ended Queue;Applications ofQueues. Programming Examples.
Linked List:
Limitations of array implementation, Memory Management: Static (Stack) and Dynamic (Heap) Memory Allocation, Memory management functions. Definition, Representation, Operations: getnode() and Freenode() operations, Types: Singly Linked List. Linked list as a data Structure, Inserting and removing nodes from a list, Linked implementations of stacks, Example of list operations such as insert and delete an element before akey element, Header nodes, Array implementation of lists.: Circular Linked List: Inserting, deleting and searching elements in a lists, Double Linked List: Inserting and Deleting Nodes, Queue as doubly linked lists, such as insert into position, Delete an specified element. Application of Linked Lists: Stacks, Queues, Double-ended Queues, Priority Queues, Sparse Matrix and Polynomials using Lists, Trees, BST.
Trees:
Definitions, Terminologies, Array and linked Representation of Binary Trees, JYpes- Complete/full, Almost Complete, Strictly, Skewed; Traversal methods - Inorder, postorder, preorder; Binary Search Trees- Creation, Insertion, Deletion, Traversal, Searching.
Sorting & Searching:
Bubble sort, Insertion Sort, Selection sort, Quick sort, Linear Search, Binary Search and BST.
Hashing:
The Hash Table organizations, Hashing Functions, Static and Dynamic Hashing, Collision-Resolution Techniques, Programming Examples.
Question paper pattern:
• The question paper will have ten questions.
• Each full question will be for 20 marks.
• There will be 2 full questions (with a maximum of four sub questions) from each Module.
• Each full question will have sub questions covering all the topics under a Module.
• The students will have to answer 5 full questions, selecting one full question from each MODULE
Textbooks:
1. Programming in ANSI C, Balaguruswamy, McGraw Hill Education.
2. Data Structures Using C and C++ by YedidyabLangsam and Moshe J. Augenstein and Aaron M Tenanbanum, 2nd Edition, Pearson Education Asia, 2002.
3. Introduction to Data Structure and Algorithms with C++ by Glenn W.Rowe. Prentice Hall.
Reference Books:
1. Principles of Data Structures using C & C++ by Vinu V. Das, New Age International, 2006
2. Data Structures Using C , Balaguruswamy :, McGraw Hill Education