This text is intended for use in the second programming course
Programming is a matter of learning by doing. Eric Roberts’ Programming Abstractions in C++ gives students opportunities to practice and learn with engaging graphical assignments. A client-first approach to data structures helps students absorb, and then apply the material.
Teaching and Learning Experience
This program presents a better teaching and learning experience—for you and your students. It will help:
Improve Student Comprehension with a Client-first Approach to Data Structures: To aid in student understanding, this book presents the full set of collection classes early.
Defer the Presentation of C++ Features that Require a Detailed Understanding of the Underlying Machine: Introducing collection classes early enables students to master other equally important topics without having to struggle with low-level details at the same time.
Engage Students with Exciting Graphical Assignments: An open-source library supports graphics and interactivity in a simple, pedagogically appropriate way.
Support Instructors and Students: The companion website provides source code, sample run PDFs, answers to review questions, and more.
Table of Contents
Chapter 1 Overview of C++
Chapter 2 Functions and Libraries
Chapter 3 Strings
Chapter 4 Streams
Chapter 5 Collections
Chapter 6 Designing Classes
Chapter 7 Introduction to Recursion
Chapter 8 Recursive Strategies
Chapter 9 Backtracking Algorithms
Chapter 10 Algorithmic Analysis
Chapter 11 Pointers and Arrays
Chapter 12 Dynamic Memory Management
Chapter 13 Efficiency and Representation
Chapter 14 Linear Structures
Chapter 15 Maps and Hashing
Chapter 16 Trees
Chapter 17 Expression Trees
Chapter 18 Sets
Chapter 19 Graphs