- NEW - New chapter with expanded and improved discussion of C++'s I/O and string classes.
- NEW - New chapter on searching—Including modified and expanded treatment of binary search trees and hash tables.
- NEW - Revised chapter on inheritance.
- NEW - Revised Chapter 1—Introduces other software engineering methods besides the waterfall model, introduces UML, describes top-down design and object-oriented design in detail, relates some of the "horror stories" of bad software design.
- NEW - Expanded chapter on queues—Including array-based and linked-list implementations, and a revised simulation case study.
- NEW - Earlier presentation of lists (Ch. 3) —Before stacks and queues. Revised to include array-based (static and dynamic) list classes, an introduction to linked lists, and more standard symbols in diagrams.
- NEW - Earlier presentation of pointers and dynamic allocation—Including an expanded discussion of the new operator (Ch. 2)
- NEW - Marginal icons—Used to call attention to key features and warnings.
- NEW - Uniform method of displaying ADT specifications in a UML-style diagram.
- NEW - A new appendix "From Java to C++"—Helps those making a transition from Java to C++.
- NEW - Array-based and linked-list implementations of stacks.
- NEW - Student CD—Contains all of the source code from the text.
- Over 1,000 exercises—Including written exercises, programming problems, and projects.
- Emphasis on abstract data types (ADTs) throughout—Reinforcing the study of data structures in the spirit of OOP.
- Coverage of the containers and algorithms from the Standard Template Library—Introducing the most up-to-date and powerful tools in C++.
- Coverage of advanced C++ topics—Including recursion, function and class templates, inheritance, and polymorphism.
- Discussions of all of the usual data structures, such as stacks and queues—Builds a foundation for later courses.
- Discussion of algorithm development, analysis, and verification—Provided training with important tools that will most likely be needed in future computer science work.
- Companion Website (www.prenhall.com/nyhoff) —Contains source code for text examples, solutions to case studies, PowerPoint slides, and more.
- Lab Manual (located under the student resources tab) -- Contains solutions to Lab exercises.
- Self-test Quick Quizzes with answers in back of text.
- Boxed Displays—Call attention to important concepts.
- Effective use of color—Highlights important features.
- More conformance to the C++ standard than many other texts.
- Solid introduction to the C++ Standard Template Library.
- A review of C++ in the appendixes for handy reference.
- Programming pointers and ADT tips at chapter ends.
- Copyright 2005
- Dimensions: 7" x 9-1/4"
- Pages: 1088
- Edition: 2nd
- ISBN-10: 0-13-140909-3
- ISBN-13: 978-0-13-140909-5
Abstract data types (ADT's) and data structures are key elements in unlocking the power of object-oriented programming. Designed for CS2 course; this popular book thoroughly covers ADTs (Abstract Data Types), data structures, and their use in problem solving. The text guides the student through the development of ADTs such as stacks, queues, and binary trees, the use of key data structures such as arrays, classes and linked lists to implement ADTs, and problem solving using Object-Oriented Design (OOD) methodologies. Algorithms required to design arid implement ADTs in C++ are given thorough treatment along with a solid introduction to the Standard Template Library (STL). C++ topics such as recursion, inheritance, and polymorphism are introduced and some C-style topics relative to data structures are also provided. Using examples, case studies and exercises from various areas of computer science, author Larry Nyhoff offers the student a solid foundation for further studies in CS while providing concrete tools for unlocking the power of C++. New to the Second Edition
- New chapters on searching and C++'s I/O and string classes
- Improvements and additions to diagrams
- Consistent naming conventions
- Complete source code for ADTs
- Expanded treatment of selected topics on the text's website
- Introduces UML and uses UML-style diagrams for ADT specifications
Table of Contents
1. Software Engineering.
2. Introduction to Data Structures and Abstract Data TypesÑC-Style Types.
3. Procedural Programming, Structures, and Classes.
4. Standard I/O and String Classes.
8. Templates and Standard Containers.
9. Recursion and Algorithm Analysis.
10. More Linked Lists.
11. Binary Trees and Hash Tables.
13. OOP and ADTs.
15. Graphs and Digraphs.
Appendix A: ASCII Character Set.
Appendix B: Number Systems.
Appendix C: Basic C++.
Appendix D: Other C++ Features.
Appendix E: Answers to Quick Quizzes.