Data Structures using C
A Practical Approach for Beginners
- Available for pre-order. Item will ship after November 9, 2021
The data structure is a set of specially organized data elements and functions are defined to store, retrieve, remove and search for individual data elements. Data Structures: A Practical Approach for Beginners covers all issues related to the amount of storage needed, the amount of time required to process the data, data representation of the primary memory and operations carried out with such data. Data Structures using C: Practical Approach for Beginners book will help students learn data structure and algorithms in a focused.
- Resolves linear and non-linear data structures in C language using the algorithm, diagrammatically and its time and space complexity analysis.
- Covers interview questions and MCQs on all topics of campus readiness
- Identifies possible solutions to each problem.
- Includes real life and computational applications of linear and non-linear data structures
This book is primarily aimed at undergraduates and graduates of computer science and information technology. Students of all engineering disciplines will also find this book useful.
Table of Contents
1. Fundamental Principles of Algorithm and Recursion. 1.1. Algorithm, its Pseudo-Code Representation and Flow Chart. 1.2. Abstract Data type. 1.3. Data Structure. 1.4. Algorithm Efficiency or Performance Analysis of an Algorithm. 1.5. Recursion and Design of Recursive Algorithms with Appropriate Examples. 1.6. Interview Questions. 1.7. Multiple Choice Questions. 2. Sequential Representation of Linear Data Structures 2.1. Distinction between Linear Data Structure and Non-Linear Data Structure. 2.2. Operations on Stack. 2.3. Applications of Stack. 2.4. Implementing Stack Applications. 2.5. Queue. 2.6. Applications of the Queue Data Structure. 2.7. Differences between Stack and Queue Data Structure. 2.8. Interview Questions. 2.9. Multiple Choice Questions. 3. Void pointer and Dynamic Memory Management. 3.1 Void Pointer. 3.2. Pointer and Structure Data Type. 3.3. Dynamic Memory Allocation. 3.4. Memory Leakage. 3.5. Dangling Pointer. 3.6. Interview Questions. 3.7. Multiple Choice Questions. 4. Linked Representation of Linear Data Structures. 4.1. Limitations of Static Memory Allocation and Advantages of Dynamic Memory Management. 4.2. Concept of Linked List. 4.3. Types of Linked List. 4.4. Singly Linear Linked list. 4.5. Singly Circular Linked List. 4.6. Doubly Linear Linked List (DLLL). 4.7. Doubly Circular Linked List. 4.8. Stack Implementation using Linked List. 4.9. Linear Queue Implementation Using Linked List. 4.10. Circular Queue Implementation Using Linked List. 4.11. Interview Questions. 4.12. Multiple Choice Questions. 5. Nonlinear Data Structures: Trees 5.1. Basic Concept and Tree Terminology. 5.2. Data Structure for Binary Trees. 5.3. Algorithms for Tree Traversals. 5.4. Construct a Binary Tree from given Traversing Methods. 5.5. Binary Search Trees (BST). 5.6. Binary Search Tree (BST) Algorithms. 5.7. Applications of Binary Search Tree (BST). 5.8. Heaps. 5.9. AVL tree. 5.10. B trees.5.11. B+ trees. 5.12. Interview Questions. 5.13. Multiple Choice Questions. 6. Nonlinear Data Structures: Graph. 6.1. Concepts and terminology of graph. 6.2. Representation of Graph Using Adjacency Matrix and Adjacency List. 6.3. Graph traversal Techniques (Breath first search and Depth first search). 6.4. Applications of Graph as Shortest Path Algorithm and Minimum Spanning Tree. 6.5. Interview Questions. 6.6. Multiple Choice Questions. 7. Searching and Sorting Techniques. 7.1. Need of searching and sorting. 7.2. Sequential Search. 7.3. Binary Search. 7.4. Analysis of Searching Techniques (Best, Average and worst case). 7.5. Hashing Techniques. 7.6. Types of Hash Functions. 7.7. Collision resolution techniques. 7.8. Open and closed hashing. 7.9. Sorting. 7.10. Interview Questions. 7.11. Multiple Choice Questions.
Amol M. Jagtap pursed M. Tech in Software Engineering from JNTU, Hyderabad. He is working as an Assistant Professor in the Department of Computer Science and Engineering at Rajarambapu Institute of Technology, Islampur, District Sangli. He has published more than 15 research papers in reputed international journals including IEEE etc. His main research work focuses on Machine learning and cloud computing. He has 16 years of experience in teaching and industry.
Ajit S. Mali pursed M. Tech Computer Science and Engineering from Rajarambapu Institute of Technology, Rajaramnagar Islampur Dist. Sangli. He is currently working as an Assistant Professor in the Department of Computer Science and Engineering at RIT, Islampur. He has published more than 15 research papers in reputed international journals, conferences including IEEE, Elsevier. His main research work focuses on Cloud Computing and Internet of Things (IoT). He has 8 years of teaching experience.