Wiley – Scrivener Publishing, 2021. — 416 p. — ISBN 978-1-119-75203-5.
Everyone knows that programming plays a vital role as a solution to automate and execute a task in a proper manner. Irrespective of mathematical problems, the skills of programming are necessary to solve any type of problems that may be correlated to solve real life problems efficiently and effectively. This book is intended to flow from the basic concepts of C++ to technicalities of the programming language, its approach and debugging. The chapters of the book flow with the formulation of the problem, it’s designing, finding the step-by-step solution procedure along with its compilation, debugging and execution with the output. Keeping in mind the learner’s sentiments and requirements, the exemplary programs are narrated with a simple approach so that it can lead to creation of good programs that not only executes properly to give the output, but also enables the learners to incorporate programming skills in them. The style of writing a program using a programming language is also emphasized by introducing the inclusion of comments wherever necessary to encourage writing more readable and well commented programs. As practice makes perfect, each chapter is also enriched with practice exercise questions so as to build the confidence of writing the programs for learners. The book is a complete and all-inclusive handbook of C++ that covers all that a learner as a beginner would expect, as well as complete enough to go ahead with advanced programming. This book will provide a fundamental idea about the concepts of data structures and associated algorithms. By going through the book, the reader will be able to understand about the different types of algorithms and at which situation and what type of algorithms will be applicable.
b]Preface[/b]
Introduction to Data StructureDefinition and Use of Data Structure
Types of Data Structure
Algorithm
Complexity of an Algorithm
Efficiency of an Algorithm
Asymptotic Notations
How to Determine Complexities
Questions
Review of Concepts of ‘C++’Array
Function
Pointer
Structure
Questions
Sparse MatrixWhat is Sparse Matrix
Sparse Matrix Representations
Algorithm to Represent the Sparse Matrix
Programs Related to Sparse Matrix
Why to Use Sparse Matrix Instead of Simple Matrix?
Drawbacks of Sparse Matrix
Sparse Matrix and Machine Learning
Questions
Concepts of ClassIntroduction to CLASS
Access Specifiers in C++
Declaration of Class
Some Manipulator Used In C++
Defining the Member Functions Outside of the Class
Array of Objects
Pointer to Object
Inline Member Function
Friend Function
Static Data Member and Member Functions
Constructor and Destructor
Dynamic Memory Allocation
This Pointer
Class Within Class
Questions
StackStack
Operations Performed With Stack Algorithms
Applications of Stack
Programming Implementations of Stack
Questions
QueueQueue
Types of Queue
Linear Queue
Circular Queue
Double Ended Queue
Priority Queue
Programs
Questions
Linked ListWhy Use Linked List?
Types of Link List
Single Link List
Programs Related to Single Linked List
Double Link List
Programs on Double Linked List
Header Linked List
Circular Linked List
Application of Linked List
Garbage Collection and Compaction
Questions
TreeTree Terminologies
Binary Tree
Representation of Binary Tree
Operations Performed With the Binary Tree
Traversing With Tree
Conversion of a Tree From Inorder and Preorder
Types of Binary Tree
Expression Tree
Binary Search Tree
Height Balanced Tree (AVL Tree)
Threaded Binary Tree
Heap Tree
Huffman Tree
Decision Tree
B-Tree
B + Tree
General Tree
Red–Black Tree
Questions
GraphGraph Terminologies
Representation of Graph
Traversal of Graph
Spanning Tree
Single Source Shortest Path
All Pair Shortest Path
Topological Sorting
Questions
Searching and SortingLinear Search
Binary Search
Bubble Sort
Selection Sort
Insertion Sort
Merge Sort
Quick Sort
Radix Sort
Heap Sort
Questions
HashingHash Functions
Collisions
Collision Resolution Methods
Clustering
Questions
Index
End User License Agreement