Data Structures using C & C++, As per AICTE
ISBN: 9788126508600
520 pages
For more information write to us at: acadmktg@wiley.com
Description
The book has been written in a simple and comprehensible manner to enable the students to grasp important concepts easily. The student-friendly nature of the book adds to its value and the presence of a large number of examples and illustrations increases its utility. End-of-chapter exercises, containing objective-type problems as well as long-answer type questions, have been included to test the students’ understanding of the topics discussed. A number of model question papers have also been included at the end of the book to help students gain practice in problem solving. The book is organized in such a manner that students and programmers will find it easy to read and understand.
Preface
1 Introduction to Data Structures
1.1 Definition
1.2 Algorithms
1.3 Complexities
1.4 Program Design
1.5 Abstract Data Types
1.6 Generic Abstract Data Types
2 Arrays
2.1 Defining an Array
2.2 Types of Arrays
Solved Examples
3 Introduction to Structure, Class and Template
3.1 Introduction to Structure
3.2 Introduction to Unions
3.3 Introduction to Class and Objects
3.4 Introduction to Template
4 Pointers and Dynamic Memory Management
4.1 Declaration of a Pointer
4.2 Pointers and One-Dimensional Arrays
4.3 Pointers and Two-Dimensional Arrays
4.4 Arrays of Pointers
4.5 Pointers and Strings
4.6 Pointers, Structures and Class
4.7 Pointers and Functions
4.8 Pointer to a Pointer
4.9 Dynamic Memory Management
5 Stack and Queues
5.1 Stack
5.2 Stack Representation and Implementation
5.3 Stack Operations
5.4 Applications of Stack
5.5 Multiple Stack
5.6 Queue
5.7 Queue Representation and Implementation
5.8 Queue Operations
5.9 Types of Queue
6 Linked List
6.1 Linked List as Data Structure
6.2 Representation of Linked List
6.3 Operations on the Linked List
6.4 Comparison between Array and Pointer Representation of Linked List
6.5 Stack as a Linked List
6.6 Queue as a Linked List
6.7 Doubly Linked List
6.8 Circular Linked List
6.9 Representation of Circular Linked List
6.10 Josephus Problem
6.11 Applications of Linked List
7 Tree
7.1 Definition of Tree
7.2 Binary Tree
7.3 Representation of a Tree
7.4 Operations on the Binary Tree
7.5 Expression Tree
7.6 General Tree
7.7 Threaded Binary Tree
7.8 Binary Search Tree
7.9 Balanced Tree
7.10 Advantages and Disadvantages of Tree Data Structures
8 Graph
8.1 Graph Terminologies
8.2 Types of Graph
8.3 Representation of Graph
8.4 Traversal of Graph
8.5 The Minimum Spanning Tree
8.6 The Shortest Path
9 Searching
9.1 Types of Searching
9.2 Hashing
9.3 Hash Functions
9.4 Collision and Collision Resolution Techniques
10 Sorting Algorithms
10.1 Bubble Sort
10.2 Insertion Sort
10.3 Selection Sort
10.4 Quick Sort
10.5 Heap Sort
10.6 Merge Sort
10.7 Radix Sort
10.8 Sorting Summary
11 Files
11.1 Basic Terminologies
11.2 Classification of Files
11.3 File Organization
11.4 Basic Operations with Files in C++
11.5 Basic Operations with Files in C
Summary
Key Terms
Multiple-Choice Questions
Review Questions
Programming Assignments
Answers
Model Question Papers
Index