Data Abstraction & Problem Solving with C++: Walls and Mirrors, 7th edition

Published by Pearson (July 14, 2021) © 2017

  • Frank M. Carrano University of Rhode Island
  • Timothy M. Henry Rhode Island College

In this eTextbook — More ways to learn

  • More flexible. Start learning right away, on any device.
  • More supportive. Get AI explanations and practice questions (select titles).
  • More interactive. Bring learning to life with audio, videos, and diagrams.
  • More memorable. Make concepts stick with highlights, search, notes, and flashcards.
  • More understandable. Translate text into 100+ languages with one tap.

In this eTextbook — More ways to learn

  • More flexible. Start learning right away, on any device.
  • More supportive. Get AI explanations and practice questions (select titles).
  • More interactive. Bring learning to life with audio, videos, and diagrams.
  • More memorable. Make concepts stick with highlights, search, notes, and flashcards.
  • More understandable. Translate text into 100+ languages with one tap.

In this eTextbook — More ways to learn

  • More flexible. Start learning right away, on any device.
  • More supportive. Get AI explanations and practice questions (select titles).
  • More interactive. Bring learning to life with audio, videos, and diagrams.
  • More memorable. Make concepts stick with highlights, search, notes, and flashcards.
  • More understandable. Translate text into 100+ languages with one tap.

Title overview

For courses in C++ Data Structures

 

Concepts of Data Structures and Abstraction for C++ Programmers

The Seventh Edition of Data Abstraction & Problem Solving with C++: Walls and Mirrors introduces fundamental computer science concepts related to the study of data structures. The text explores problem solving and the efficient access and manipulation of data and is intended for students who already have a basic understanding of programming, preferably in C++.

 

The “walls and mirrors” mentioned in the title represent problem-solving techniques that appear throughout the text. Data abstraction hides the details of a module from the rest of the program, whereas recursion is a repetitive technique that solves a problem by solving smaller versions of the same problems, much as images in facing mirrors grow smaller with each reflection. Along with general changes to improve clarity and correctness, this Seventh Edition features new notes, programming tips, examples, and programming problems, as well as C++11 and C++14 features–including safe memory management using smart pointers–and safe and secure coding techniques.

Table of contents

Brief Contents

  1. Data Abstraction: The Walls
  2. Recursion: The Mirrors
  3. Array-Based Implementations
  4. Link-Based Implementations
  5. Recursion as a Problem-Solving Technique
  6. Stacks
  7. Stack Implementations
  8. Lists
  9. List Implementations
  10. Algorithm Efficiency
  11. Sorting Algorithms and Their Efficiency
  12. Sorted Lists and Their Implementations
  13. Queues and Priority Queues
  14. Queue Implementations
  15. Trees
  16. Tree Implementations
  17. Heaps
  18. Dictionaries and Their Implementations
  19. Balanced Search Trees
  20. Graphs
  21. Processing Data in External Storage

Author bios

This publication contains markup to enable structural navigation and compatibility with assistive technologies. Images in the publication MAY NOT be fully described, which is a barrier to those who rely on alternative text descriptions. The publication supports text reflow and contains no content hazards known to cause adverse physical reactions.

Need help?Get in touch