Review for Exam 1 Topics covered: For each of these data structures Asymptotic analysis Lists and list implementations Stacks and queues General trees, binary trees BST For each of these data structures Basic idea of data structure and operations Be able to work out small example problems Advantages and limitations Asymptotic time performance of their operations Comparison between different implementations
Asymptotic analysis Best/Worst/Average performance (time and space) Big-O notation and properties Definition (constants c and n0) Lower order terms, constant coefficients Sum rule, product rule (be careful) Proofs Growth rates of commonly used functions Constant/logarithm/polynomial/exponential L’Hospital’s rule
Lists Stacks and queues List ADT. Basic operations and their time performance (implemen-tation dependent) List iterators. List implementation Array Linked list Stacks and queues ADT and operations (and their time performance) Implementation: Adaptor How this design pattern works Pros and cons
General tree Binary trees Definition Internal and external nodes Height and depth, path length Tree storage methods and their nodes Binary trees Full, complete and perfect binary trees and their properties 4 different orders of tree traversals
BST Definition Basic operations and their implementations Find/contains, findMin, findMax insert, remove, recursive implementations Time performance of these operations Problems with unbalanced BST (degeneration)
Types of questions: Similar to those of the supplementary questions on the web (under Practice Exercises) Definitions Short questions Coding (some may require using operations already defined in the class, mostly in pseudo code) Applying operations to specific example problems Proofs