My Account Log in

1 option

Data structures and algorithms in C++ / Lee Wittenberg.

Ebook Central College Complete Available online

View online
Format:
Book
Author/Creator:
Wittenberg, Lee, author.
Series:
Pocket primer.
Pocket Primer
Language:
English
Subjects (All):
Data structures (Computer science).
C++ (Computer program language).
Physical Description:
1 online resource (169 pages) : illustrations.
Edition:
1st ed.
Place of Publication:
Dulles, Virginia ; Boston, Massachusetts ; New Delhi, [India] : Mercury Learning & Information, 2018.
Summary:
This book takes a minimalist approach to the traditional data structures course. It covers only those topics that are absolutely essential; the more esoteric structures and algorithms are left for later study. Suitable for an introductory data structures course or self-study, this book is written from the ground up in C++ (not translated from a Java-based text), and uses features of the C++ Standard Template Library to illustrate important concepts. A unique feature of the text is its use of literate programming techniques (originally developed by Donald Knuth) to present the sample code in a way that keeps the code from overwhelming the accompanying explanations. This book is suitable for an undergraduate data structures course using C++ or for developers needing review.Features* Takes a "minimalist" approach to the material that presents only essential concepts. This enables readers to focus on (and remember) just what they'll need.* Uses select features of the C++11 standard to simplify the sample code and make it easier to understand.* Connects the concepts directly to the classes provided the Standard Template Library (STL), and shows how these classes can be implemented in C++. * Uses "literate programming" techniques that allow the presentation of the sample code to more clearly show the details of the code as well as how the pieces fit together.
Contents:
Intro
Title Page
Copyright
Contents
Preface
Acknowledgments
Chapter 1: C++ Review
1.1 The auto Keyword
1.2 Classes
1.2.1 Example: A Fraction Class
1.3 Pointers and Arrays
1.4 Inheritance
1.5 Templates
1.6 The Standard Template Library (STL)
1.6.1 Containers
1.6.2 Iterators
1.6.3 Algorithms
1.7 Putting It All Together: A Vector Class
1.7.1 Constructors/Destructors
1.7.2 Member Functions
1.7.3 Iterators
Chapter 2: Algorithm Analysis
2.1 Big-O Notation
2.1.1 Terminology
2.2 Efficiency of Vector Operations
2.3 Estimates and Comparisons
2.4 Fast Enough
Chapter 3: Linked Lists
3.1 The list Interface
3.2 List Implementation
3.2.1 Constructors/Destructors
3.2.2 Member Functions
3.2.3 Iterators
Chapter 4: Stacks and Queues
4.1 The stack and queue Interfaces
4.2 Example: Infix and Postfix
4.3 Stack and Queue Implementation
4.3.1 Constructors/Destructors
4.3.2 Member Functions
Chapter 5: Recursion
5.1 Recursive Definitions
5.2 Proof by Induction
5.3 Example: Binary Search
5.4 Example: Tower of Hanoi
5.5 Example: Recursive Descent Parsing
5.6 The Efficiency of Recursion
Chapter 6: Binary Trees
6.1 Traversals
6.2 Example: Expression Trees
6.3 Example: Binary Search Trees
6.4 The set and map Interfaces
6.5 Example: Associative Arrays
6.6 Example: Sparse Matrices
6.7 A Binary_Search_Tree Class
6.7.1 Constructors/Destructors
6.7.2 Member Functions
6.7.3 Iterators
6.8 Set and Map Implementation
6.8.1 Constructors/Destructors
6.8.2 Member Functions
6.8.3 Iterators
Chapter 7: Binary Trees (continued)
7.1 Height-Balanced Trees
7.2 General Trees
7.3 Heaps
7.4 The priority_queue Interface
7.5 Priority_Queue Implementation
7.5.1 Constructors/Destructors.
7.5.2 Member Functions
Chapter 8: Sorting
8.1 Bubble Sort (Revised)
8.2 Selection Sort
8.3 Insertion Sort
8.4 Shell Sort
8.5 Heap Sort
8.6 Merge Sort
8.7 Quick Sort
8.8 The STL sort Function
Chapter 9: Hash Tables
9.1 Hash Functions
9.2 Collisions
9.2.1 Probing
9.2.2 Chaining
9.3 Load Factors and Efficiency
9.4 Rehashing
9.5 The unordered_set and unordered_map Interfaces
9.6 A Hash_Table Class
9.6.1 Constructors/Destructors
9.6.2 Member Functions
9.6.3 Iterators
9.7 Unordered_Set and Unordered_Map Implementation
9.7.1 Constructors/Destructors
9.7.2 Member Functions
9.7.3 Iterators
Chapter 10: Graphs
10.1 Graph Representations
10.1.1 Adjacency Matrix
10.1.2 Adjacency Lists
10.2 Traversals
10.2.1 Depth-First Search
10.2.2 Breadth-First Search
10.3 Example: Topological Sorting
10.4 Example: Shortest Path
10.5 A Graph Interface
10.6 Graph Implementation
10.6.1 Constructors/Destructors
10.6.2 Member Functions
Appendix A: A Programmer's Library
Appendix B: STL Class Summary
Appendix C: Chunk Index
Index.
Notes:
Includes index.
Description based on print version record.
ISBN:
9781683920854
1683920856
OCLC:
993106615

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

Find

Home Release notes

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Find catalog Using Articles+ Using your account