This book presents the fundamentals of data structures from an object oriented perspective. The text uses C++, whose classes and object oriented constructs are specifically designed to efficiently implement data structures. The opening chapters introduce the ideas behind OOP and C++ and once the principles are explained, the book develops to deal with data structures and algorithms fom an OO point of view. All the standard data structures are described, including stacks, queues, sets, linked lists, trees and graphs. In addition to the algorithms dealing with these data structures, searching and sorting algorithms are also studied. A non-mathematical approach is adopted for the study of algorithm efficiency. Rather than derive analytic expressions for the number of steps taken by various alorithms, programs are written which count the number of steps and draw graphs of these numbers as functions of the size of the data sets being processed. The Graphs are then transformed to obtain the orders of the algorithms.
This is a complete introduction to the critical topic of data structures, written from the object-oriented perspective most students and practitioners are adopting.The book introduces data structures using C++, a language whose classes and object-oriented constructs are specifically designed to efficiently implement data structures. The opening chapters introduce the ideas behind object-oriented programming and C++; once these ideas are explained, the book introduces data structures and algorithms from an O-O point of view. All standard data structures are described, including stacks, queues, sets, linked lists, trees and graphs. Searching and sorting algorithms are also studied.This book is for students and others working with data structures, especially object-oriented developers interested in ways data structures can enhance their effectiveness.