Intro to C++ Classes and Data Structures
Wayne Goddard

This is a brief summary for a 3rd semester course on Data Structures in C++, assuming a C background.

The full set (100 pages) is available here.

  1. Basics of C++ | adder.cpp
  2. Arrays, pointers and functions | primality.cpp | strstr.cpp
  3. Algorithm analysis
  4. Program development
  5. Basics of classes | Citizen.cpp
  6. C++ Files | DoubleList.h | DoubleList.cpp
  7. More on classes | Fraction.h | Fraction.cpp | TestFraction.cpp
  8. Collections | StringSet.h | StringSet.cpp | TestStringSet.cpp
  9. Recursion | StepsByRecursion.cpp
  10. Linked lists | MyLinkedBag.h | MyLinkedBag.cpp
  11. Stacks | ArrayStack.h | ArrayStack.cpp | Balanced.cpp
  12. Queues
  13. Trees
  14. Binary Search Trees | BSTNode.h | BinarySearchTree.h | BinarySearchTree.cpp
  15. More Search Trees
  16. Inheritance | RBNode.h | RedBlackTree.h | RedBlackTree.cpp | BTreeNode.h | BTreeLeaf.cpp | BTreeInternal.cpp | BTree.cpp
  17. Heaps | PriorityQueue.h | Heap.h | Heap.cpp
  18. Hash tables
  19. Advanced C++ topics | SimpleList.h | SimpleList.cpp | TestSimpleList.cpp
  20. Sorting
  21. Graphs | Dag.h | GraphAlgorithms.cpp | AListDAG.cpp | SortTest.cpp
  22. Paths and searches