Welcome to Prashant Publications

Rs. 175.00
Availability: 10 left in stock

We are pleased to present this textbook titled “Data Structure I” for the course CS-201-MJ-T offered in Semester III of S.Y.B.Sc. (Computer Science) under the Savitribai Phule Pune University (SPPU)...

Guaranteed safe checkout:

apple paygoogle paymasterpaypalshopify payvisa

Orders ship within 5 to 10 business days.

Hoorey ! This item ships free to the US

Data Structures
- +

We are pleased to present this textbook titled “Data Structure I” for the course CS-201-MJ-T offered in Semester III of S.Y.B.Sc. (Computer Science) under the Savitribai Phule Pune University (SPPU) curriculum. This book has been developed in alignment with the NEP CBCS 2025–26 syllabus and aims to provide students with a solid foundation in data structures, their implementation, and their applications in solving computational problems.

 Data structures are a fundamental component of computer science. They provide systematic ways to organize, manage, and process data efficiently. This subject helps learners bridge the gap between basic programming skills and advanced problem-solving techniques required in software development. Each chapter has been written in simple language, supported by diagrams, algorithms, and example programs in C to strengthen understanding. The book emphasizes not only theoretical concepts but also the practical implementation aspects that are crucial for developing real-world applications.

We are thankful to our vibrant publisher Shri Rangrao Patil and all staff of Prasant Publications for their efforts and keen interest in publishing this book in a very limited span of time. We hope that this textbook will serve as a helpful companion to students and teachers alike in their academic journey, and will encourage learners to think analytically and solve problems effectively using appropriate data structures. We welcome constructive suggestions and feedback from readers to improve future editions of this book.

1. Introduction to Data Structures and Algorithm Analysis………………… 7
1.1. Introduction
1.1.1 Need of Data Structure
1.1.2 Definitions-Data and Information, Data type, Data object, ADT, Data Structure
1.1.3 Types of Data Structures
1.2 Algorithm Analysis
1.2.1 Space and Time Complexity
1.2.2 Best, Worst, Average case analysis, Asymptotic notations (Big-O (O) , Omega Ω, Theta (Θ) ), Problems on time complexity calculation
2. Array as a Data Structure……………………………………………………………. 21
2.1 ADT of array, Operations and Applications of Array
2.2 Searching Techniques
2.2.1 Sequential / Linear search 2.2.2 Binary Search
2.2.3 Comparison of Searching Techniques
2.3 Sorting Techniques
2.3.1 Terminology- Internal, External, Stable, In-place Sorting
2.3.2 Comparison Based Sorting Techniques – Bubble Sort, Insertion Sort, Selection Sort
2.3.3 Algorithm design strategies -Divide and Conquer strategy, Merge Sort, Quick Sort
2.3.4 Non Comparison Based Sorting: Counting Sort, Radix Sort
2.3.5 Analysis of sorting techniques.
2.3.6 Comparison of sorting Techniques
3. Linked List………………………………………………………………………………….. 34
3.1 Introduction to Linked List
3.2 Implementation of Linked List – Static & Dynamic representation,
3.3 Types of Linked List-– Singly, Doubly, Circular (Singly)
3.4 Operations on Linked List – create, display, insert, delete, reverse, search,
sort, concatenate and merge3.5 Applications of Linked List – Polynomial Representation, Addition of
two polynomials
3.5.1 Generalized linked list – Concept, Representation)
4. Stack ………………………………………………………………………………………….. 71
4.1 Introduction to Stack
4.2 Operations – init(), push(), pop(), isEmpty(), isFull(), peek(), time
complexity of operations.
4. 3 Representation – Static (Array) and Dynamic (Linked List)
4.4 Applications of stack
4.4.1 Function call and recursion, String reversal, palindrome checking
4.4.2 Expression types – infix, prefix and postfix, expression conversion
and evaluation (Implementation of infix to prefix , infix to postfix,
evaluation of postfix)
5. Queue…………………………………………………………………………………………. 101
5.1 Introduction to Queue
5.2 Operations – init(), enqueue(), dequeue(), isEmpty(), isFull(), peek(),time complexity of operations, differences with stack.
5.3 Implementation – Static (Array) and Dynamic (Linked List) with comparison
5.4 Types of Queue – Linear Queue, Circular Queue, Priority Queue, Double Ended Queue (only Concept of Doubly Ended Queue)
5.5 Applications of queue