
As an Amazon Associate and affiliate partner, Menrva Books earns from qualifying purchases. Learn more
Data Structures and Problem Solving Using C++ provides a practical introduction to data structures and algorithms from the viewpoint of abstract thinking and problem solving, as well as the use of C++. It is a complete revision of Weiss' successful CS2 book Algorithms, Data Structures, and Problem Solving with C++.The most unique aspect of this text is the clear separation of the interface and implementation. C++ allows the programmer to write the interface and implementation separately, to place them in separate files and compile separately, and to hide the implementation details. This book goes a step further: the interface and implementation are discussed in separate parts of the book. Part I (Objects and C++), Part II (Algorithms and Building Blocks), and Part III (Applications) lay the groundwork by discussing basic concepts and tools and providing some practical examples, but implementation of data structures is not shown until Part IV (Implementations). This separation of interface and implementation promotes abstract thinking. Class interfaces are written and used before the implementation is known, forcing the reader to think about the functionality and potential efficiency of the various data structures (e.g., hash tables are written well before the hash table is implemented).Throughout the book, Weiss has included the latest features of the C++ programming language, including a more prevalent use of the Standard Template Library (STL).
This text investigates the fundamental relationship between abstract data structure design and efficient C++ implementation through a structured pedagogical framework. Mark Weiss, a recognized authority in computer science education, utilizes his extensive experience to guide students through the complexities of algorithm design. The book argues that by strictly separating interface design from internal implementation, programmers can develop more robust, modular, and efficient software solutions.
What You Will Find
Computer science educators frequently cite this work as a foundational text for intermediate programming courses due to its logical progression and emphasis on software engineering principles. Readers often note the academic density of the prose, which is designed to challenge students to think critically about code architecture rather than simple syntax.
Page Count:
984
Publication Date:
1999-11-23
Publisher:
Pearson
ISBN-10:
020161250X
ISBN-13:
9780201612509
No comments yet. Be the first to share your thoughts!