CS121 Data Structure Review
Spring, 98
1. Introduction to Data Structure in C++
Program Specification, Design, and Analysis
- Precondition and Postconditions
- Big-O notation
- Basic programming control structures (IF, FOR-loop, WHILE-loop)
ADT and C++ Classes
- Class definition header file and class implementation file
- Class application/test file.
2. Container Classes
Bag and List ADT
- Class specifications
Bag and List Classes Implementations
- Array: static memory allocation
- Linked List (Pointers): dynamic memory allocation
3. Data Structures
Stack (LIFO)
- Specification, implementations and applications.
Queue (FIFO)
- Specification, implementations and applications.
Recursive function
- Recursive calls
- Stopping cases
Binary Tree, Binary Search Tree (and B-tree)
- Specification, implementations and applications.
- Tree traversals (In-Order/Post-Order/Pre-Order)
4. Searching and Sorting
Binary Search (recursive)
- Algorithm and implementations
Hashing
- Algorithm and implementations
- Dealing with Collisions
Bubble sort, Selection sort, Insertion sort (and Heap sort)
- Algorithm and implementations
- Performance
Merge sort and Quick sort (recursive)
- Algorithm and implementations
- Performance