| |
| |
| |
Structs and Classes | |
| |
| |
| |
Structs | |
| |
| |
| |
Basic Class Concepts | |
| |
| |
| |
Class Implementation | |
| |
| |
| |
Testing a Class | |
| |
| |
| |
Placing Function Definitions in the Class Definition (and Why We Shouldnt) | |
| |
| |
| |
Commenting a Class | |
| |
| |
| |
The Differences Between a Struct and a Class | |
| |
| |
| |
Overloaded Operators, Class Templates, and Abstraction | |
| |
| |
| |
Overloaded Operators | |
| |
| |
| |
Using a Check Struct in the Checkbook Class | |
| |
| |
| |
Class Templates | |
| |
| |
| |
Classes and Abstraction | |
| |
| |
| |
The const Specifier, Constructors, and Class Modification | |
| |
| |
| |
The const Specifier | |
| |
| |
| |
Constructors | |
| |
| |
| |
An Example | |
| |
| |
| |
Class Modification | |
| |
| |
| |
Modifying the Checkbook Class to Keep a History of Checks | |
| |
| |
| |
Purpose of the Private Section | |
| |
| |
| |
A Summary of the Advantages of Classes | |
| |
| |
| |
Pointers and Dynamic Arrays | |
| |
| |
| |
Pointers | |
| |
| |
| |
The [ ] Operator | |
| |
| |
| |
Dynamically Allocated Memory | |
| |
| |
| |
Dynamic Arrays | |
| |
| |
| |
The delete Operator | |
| |
| |
| |
Pointers to Objects | |
| |
| |
| |
Running Out of Heap Memory | |
| |
| |
| |
Adjustable Arrays | |
| |
| |
| |
An Array Class | |
| |
| |
| |
Array Class Template | |
| |
| |
| |
Using the Array Class | |
| |
| |
| |
Destructors | |
| |
| |
| |
The Overloaded Assignment Operator | |
| |
| |
| |
Copy Constructors | |
| |
| |
| |
An Example | |
| |
| |
| |
Advantages and Disadvantages of an Array Class | |
| |
| |
| |
Methods for Making Data Structures | |
| |
| |
| |
Using Arrays in Data Structures | |
| |
| |
| |
Sorting Arrays | |
| |
| |
| |
Introduction to Linked Structures | |
| |
| |
| |
Arrays vs. Linked Lists | |
| |
| |
| |
Writing Code for Linked Lists | |
| |
| |
| |
The Linked List Implementation of Basic Data Structures | |
| |
| |
| |
Basic Queue Concepts | |
| |
| |
| |
Linked List Implementation of a Queue | |
| |
| |
| |
Other Implementations | |
| |
| |
| |
Linked List Implementation of a Stack | |
| |
| |
| |
The Array Implementation of Basic Data Structures | |
| |
| |
| |
Array Implementation of a Stack | |
| |
| |
| |
Array Implementation of a Queue | |
| |
| |
| |
Introduction to Time Complexities | |
| |
| |
| |
Time Complexity Basics | |
| |
| |
| |
The Constant Time Complexity | |
| |
| |
| |
Big-oh Notation | |
| |
| |
| |
The Logarithmic Time Complexity | |
| |
| |
| |
The Binary Search Algorithm | |
| |
| |
| |
Computer Speed Where Does it Really Come From? | |
| |
| |
| |
Time Complexities of Data Structure Functions | |
| |
| |
| |
The Linked List as a Data Structure | |
| |
| |
| |
Using Key Values in Objects | |
| |
| |
| |
Linked List Implementation | |
| |
| |
| |
Other Implementations | |
| |
| |
| |
Hash Tables | |
| |
| |
| |
Basics About Hash Tables | |
| |
| |
| |
Implementation Issues for a Hash Table | |
| |
| |
| |
Pointers to Functions | |
| |
| |
| |
A Hash Table Implementation | |
| |
| |
| |
Using the Hash Table Implementation | |
| |
| |
| |
A Hash Table Implementation of a Doubly-Linked List | |
| |
| |
| |
Priority Queues, Trees, and Heaps | |
| |
| |
| |
Priority Queue Basics | |
| |
| |
| |
Implementation Issues for Priority Queues | |
| |
| |
| |
Trees | |
| |
| |
| |
Heaps | |
| |
| |
| |
Implementation Issues for Heaps | |
| |
| |
| |
A Heap Implementation of a Priority Queue | |
| |
| |
| |
Heapsort | |
| |
| |
| |
Recursion | |
| |
| |
| |
A Recursive Factorial Function | |
| |
| |
| |
A Stack of Activation Records | |
| |
| |
| |
Guidelines for Writing Recursive Functions | |
| |
| |
| |
Using Recursion on Linked Structures | |
| |
| |
| |
Time Complexities of Recursive Functions | |
| |
| |
| |
Other Data Structures | |
| |
| |
| |
Binary Search Trees | |
| |
| |
| |
Graphs | |
| |
| |
| |
Comparing Adjacency Matrices to Adjacency Lists | |
| |
| |
| |
How to Compile and Work With Multiple-File Programs | |
| |
| |
| |
Amortized Analysis of Array Expansion and Contraction | |
| |
| |
Index | |