Data Structures Using C
Authors: Dr. Gagan Goyal, Dr. Udai Bhan Trivedi, Mr. Vivek Tripathi, and Dr. Fateh Bahadur Kunwar
ISBN: 978-81-69857-80-2
DOI: https://doi.org/10.59646/839
Date of Publication: October 05, 2026
Preface
Data structures form the foundation of efficient algorithm design and are central to the development of reliable, scalable, and high-performance software systems. Data Structures Using C has been designed as a comprehensive textbook to develop a strong understanding of fundamental data organization techniques, algorithmic reasoning, memory representation, and implementation using the C programming language. The book begins with the core concepts of data structures, abstract data types, data organization, algorithm analysis, time and space complexity, asymptotic notations, and time–space trade-offs, thereby establishing the analytical foundation required for studying advanced structures.
The subsequent units provide systematic coverage of arrays, multidimensional arrays, sparse matrices, linked lists, stacks, recursion, and queues, with emphasis on their memory organization, operational mechanisms, C implementations, and practical applications. Advanced treatment of searching and hashing introduces sequential, index sequential, and binary searching, together with hash functions, collision-resolution techniques, chaining, open addressing, and rehashing. Sorting techniques including bubble, selection, insertion, merge, quick, heap, and radix sorting are examined from both implementation and algorithmic complexity perspectives.
The book further progresses into hierarchical and non-linear data structures, covering trees, binary trees, threaded trees, expression trees, Huffman coding, binary search trees, AVL trees, B-trees, and binary heaps. The final unit focuses on graph structures and graph algorithms, including adjacency representations, breadth-first and depth-first search, connected components, spanning trees, Prim’s and Kruskal’s algorithms, transitive closure, and shortest-path techniques. Throughout the book, mathematical analysis, structural invariants, algorithmic complexity, memory considerations, and C-based implementation are integrated to encourage both conceptual understanding and practical programming competence.
Designed for students, programmers, and learners of computer science and information technology, Data Structures Using C aims to bridge the gap between theoretical data-structure concepts and their implementation-oriented understanding. By progressing from elementary representations to sophisticated trees, heaps, hashing mechanisms, and graph algorithms, the book provides a structured pathway for developing efficient problem-solving skills and understanding how appropriate data structures influence algorithmic performance. The integration of C programming with rigorous analysis makes the book a useful academic and practical reference for courses in data structures, algorithms, programming, and computer science fundamentals.
