Table Of Content1. Introduction. What's the Book About? Mathematics Review. Exponents. Logarithms. Series. Modular Arithmetic. The P Word. A Brief Introduction to Recursion C++ Classes. Basic class Syntax. Extra Constructor Syntax and Accessors Separation of Interface and Implementation. vector and string. C++ Details. Pointers. Parameter Passing. Return Passing Reference Variables. The Big Three: Destructor, Copy Constructor, operator=. The World of C. Templates. Function Templates. Class Templates. Object, Comparable, and an Example. Using Matrices. The Data Members, Constructor, and Basic Accessors. operator [ ]. Destructor, Copy Assignment, Copy Constructor. Summary. Exercises. References. 2. Algorithm Analysis. Mathematical Background. Model. What to Analyze. Running Time Calculations. A Simple Example. General Rules. Solutions for the Maximum Subsequence Sum Problem. Logarithms in the Running Time. Checking Your Analysis. A Grain of Salt. Summary. Exercises. References. 3. Lists, Stacks, and Queues. Abstract Data Types (ADTs). The List ADT. Simple Array Implementation of Lists. Linked Lists. Programming Details. Memory Reclamation and the Big Three. Doubly Linked Lists. Circular Linked Lists. Examples. Cursor Implementation of Linked Lists. The Stack ADT. Stack Model. Implementation of Stacks. Applications. <div STYLE="ma
SynopsisIn this second edition of his successful book, experienced teacher and author Mark Allen Weiss continues to refine and enhance his innovative approach to algorithms and data structures. Written for the advanced data structures course, this text highlights theoretical topics like abstract data types and the efficiency of algorithms, as well as performance and running time. Before covering algorithms and data structures, the author provides a brief introduction to C++ for programmers unfamiliar with the language. All of the source code will be available over the Internet. Dr. Weiss also distinguishes the book with his clear, friendly writing style, logical organization of topics, and extensive use of figures and examples that show the successive stages of an algorithm., In this text, readers are able to look at specific problems and see how careful implementations can reduce the time constraint for large amounts of data from several years to less than a second. Class templates are used to describe generic data structures and first-class versions of vector and string classes are used. Included is an appendix on a Standard Template Library (STL). This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amount of efficiency. Readers should have some knowledge of intermediate programming, including topics as object-based programming and recursion, and some background in discrete math., New to this Edition *An appendix on the Standard Template Library (STL) *C++ code, tested on multiple platforms, that conforms to the ANSI ISO final draft standard