Individual Exam 2
Your individual exam will be a paper exam consisting of conceptual questions related to the course topics. There will not be any C++ syntax on the exam. There will be conceptual questions related to programming in C++, in particular pointers and an understanding of linked-list data structure implementations.
The following topics may be covered (not all will be).
- Big-Oh runtime
- Comparison of abstract data types
- Lists, stacks, queues, deques, sets – definitions
- Scenarios in which it is appropriate to use one kind of data structure over another
- Searching and Sorting
- Linear search and binary search
- Insertion sort and merge sort
- Runtime of sorting algorithms
- Runtime of searching algorithms
- Tree-Based Data Structures
- Binary trees vs. balanced binary trees - the difference between the two
- How to conceptually visualize binary tree structures and their associated operations
- Implementations of binary trees and their trade-offs
- Traversal of binary trees (breadth-first vs depth-first)
The following topics will not be covered.
- Syntax for addition and removal from any data structures
- Inductive proofs
- Heaps
How to Study
Go back to the data structures and their implementatios. Try first working with the data structures in C++ code, then try drawing out the data structures that you have created in the code.
Return to your Homeworks 3 and 4 to note any feedback you have received, and try revising those assignments based on the feedback. (Feedback for Homework 4 will be posted by the end of the day Thursday.)
Go back to your first exam; what were the places that your feedback indicated you needed to focus in?