CS 2500 Study Guide for Third Exam
COMPUTER SCIENCE 2500 -- PROGRAMMING II
Chapter Six -- Stacks
-
Be familiar with the array-based and pointer-based
implementations of stacks.
-
Know the stack ADT operations and their uses.
-
Know the kinds of problems that stacks are good for solving.
-
Be able to read and understand C++ code that implements stacks.
Be able to give pseudo code for stack operations.
-
Know the advantages and disadvantages of array-based versus
pointer-based versus list-based implementations of stacks.
-
Be able to read code that uses a stack class, predict what the
code will do, and what it will output.
Chapter Seven -- Queues
-
Be familiar with the array-based and pointer-based
implementations of queues.
-
Know the queue ADT operations and their uses.
-
Know the kinds of problems that queues are good for solving.
-
Be able to read and understand C++ code that implements queues.
Be able to give pseudo code for queue operations.
-
Know the advantages and disadvantages of array-based versus
pointer-based versus list-based implementations of queues.
-
Be able to read code that uses a queue class, predict what the
code will do, and what it will output.
Chapter Ten -- Trees
-
Know basic tree definitions and nomenclature -- terms like binary
tree, binary search tree, subtree, full tree, complete tree,
height, level, path, leaf, internal node, parent, sibling,
ancestor, descendent, root, and so forth.
-
Be aware of the various traversal orders possible, the order they
visit nodes in an arbitrary binary tree, and their possible
applications.
-
Understand the basics of what SearchTreeInsert and
SearchTreeDelete do. Given an initial diagram of a binary search
tree, be able to make another diagram showing what the tree will
look like after some series of insertions and deletions you are
told about.
-
Understand how the efficiency of search in a binary search tree
is related to whether the tree has near minimum height. Be
prepared to discuss the big-O of various binary search tree
operations - both average cases and worst cases.