Study Guide for CS 313E Test 3 (Spring 2014)
* You should be familiar with the following sorting algorithms -
selection sort, bubble sort, insertion sort, merge sort and
quick sort. You should be able to trace each of the algorithms
for a given array.
* You should also be familiar with algorithms that we covered using
the following data structures - stacks, queues, linked lists and
binary search trees.
* You should be able to use a hash function and hash using single
probing, quadratic probing, and double hashing.
* You should be able to add to the functionality of the BinarySearchTree
class, modify the BinarySearchTree class, or apply the BinarySearchTree
class to solve simple problems.
* You should be able to trace the algorithms to create a heap, add
or delete nodes from a heap and use heap sort to sort an array.
* Show how to balance a binary bearch tree to create an AVL tree.
Show how to get the balance factor in a binary search tree and
keep the tree balanced after insertions or deletions.
* Given an infix arithmetic expression draw the binary expression
tree representation of it. Show how to get the prefix and postfix
expressions from that tree.
* Add functionality to the Graph class that we defined in class.
You must be familiar and be able the trace the following graph
algorithms - Depth First Search (DFS), Breadth First Search (BFS),
Topological Sort, Minimum Cost Spanning Tree using Kruskal's and
Prim's algorithm, and Dijkstra's Single Source Shortest Path
algorithm.
* You may bring two cheat sheets (8.5" x 11") with you that has hand
written notes on both sides of the paper.