Download notes of DATA STRUCTURES (RCS305/ RCS405)
Syllabus of DATA STRUCTURES (RCS305/ RCS405)
Introduction: Basic Terminology, Elementary Data Organization, Algorithm, Efficiency of an
Algorithm, Time and Space Complexity, Asymptotic notations: Big-Oh, Time-Space tradeoff.
Abstract Data Types (ADT), Arrays: Definition, Single and Multidimensional Arrays,
Representation of Arrays: Row Major Order, and Column Major Order, Application of
arrays, Sparse Matrices and their representations.
Linked lists: Array Implementation and Dynamic Implementation of Singly Linked Lists,
Doubly Linked List, Circularly Linked List, Operations on a Linked List. Insertion, Deletion,
Traversal, Polynomial Representation and Addition, Generalized Linked List.
Stacks: Abstract Data Type, Primitive Stack operations: Push & Pop, Array and Linked
Implementation of Stack in C, Application of stack: Prefix and Postfix Expressions,
Evaluation of postfix expression, Recursion, Tower of Hanoi Problem, Simulating Recursion,
Principles of recursion, Tail recursion, Removal of recursion Queues, Operations on Queue:
Create, Add, Delete, Full and Empty, Circular queues, Array and linked implementation of
queues in C, Dequeue and Priority Queue.
Trees: Basic terminology, Binary Trees, Binary Tree Representation: Array Representation
and Dynamic Representation, Complete Binary Tree, Algebraic Expressions, Extended
Binary Trees, Array and Linked Representation of Binary trees, Tree Traversal algorithms:
Inorder, Preorder and Postorder, Threaded Binary trees, Traversing Threaded Binary trees,
Graphs: Terminology, Sequential and linked Representations of Graphs: Adjacency Matrices,
Adjacency List, Adjacency Multi list, Graph Traversal : Depth First Search and Breadth First
Search, Connected Component, Spanning Trees, Minimum Cost Spanning Trees: Prims and
Kruskal algorithm. Transitive Closure and Shortest Path algorithm: Warshal Algorithm and
Dijikstra Algorithm, Introduction to Activity Networks.
Searching: Sequential search, Binary Search, Comparison and Analysis Internal Sorting:
Insertion Sort, Selection, Bubble Sort, Quick Sort, Two Way Merge Sort, Heap Sort, Radix
Sort, Practical consideration for Internal Sorting.
Search Trees: Binary Search Trees (BST), Insertion and Deletion in BST, Complexity of
Search Algorithm, AVL trees, Introduction to m-way Search Trees, B Trees & B+ Trees .
Hashing: Hash Function, Collision Resolution Strategies.
Storage Management: Garbage Collection and Compaction.
1. Aaron M. Tenenbaum, Yedidyah Langsam and Moshe J. Augenstein, “Data
Structures Using C and C++”, PHI Learning Private Limited, Delhi India
2. Horowitz and Sahani, “Fundamentals of Data Structures”, Galgotia Publications Pvt
Ltd Delhi India.
3. Lipschutz, “Data Structures” Schaum’s Outline Series, Tata McGraw-hill Education
(India) Pvt. Ltd.
4. Thareja, “Data Structure Using C” Oxford Higher Education.
5. AK Sharma, “Data Structure Using C”, Pearson Education India.
6. Rajesh K. Shukla, “Data Structure Using C and C++” Wiley Dreamtech Publication.
7. Michael T. Goodrich, Roberto Tamassia, David M. Mount “Data Structures and
Algorithms in C++”, Wiley India.
8. P. S. Deshpandey, “C and Data structure”, Wiley Dreamtech Publication.
9. R. Kruse etal, “Data Structures and Program Design in C”, Pearson Education
10. Berztiss, AT: Data structures, Theory and Practice, Academic Press.
11. Jean Paul Trembley and Paul G. Sorenson, “An Introduction to Data Structures with
applications”, McGraw Hill.
12. Adam Drozdek “Data Structures and Algorithm in Java”, Cengage Learning