Binary Search Tree
Video
you will complete the Binary Search Tree
that you started in the Binary Search Tree lab
there are runnable examples in the homework directory that show they complete functionality other wise use the files from the lab
Binary Search Tree
===============================================
i Insert a value into the tree
c Does the tree contain a specific value
d Delete a value from the tree
y Print the values of the tree in pre order
p Print the values of the tree in order
z Print the values of the tree in post order
m Show this menu
x Exit
===============================================
Enter selection:
the output when testing should match that of the runable examples
MAKE sure you output matches the examples when you redirect in the testfiles
MAKE sure your ToString output can be used on the viewlist page
viewtree
there is an interactive demo that will help visualize the process for insert and delete
BST demo
YOU MUST:
1. make it a template class
2. put all your function bodies inside the class
3. make your Node an inner class
4. copy over the testfiles and use ALL of them to test your code
5. your code should have no compilation warnings
6. make your code such that no combination of function calls will result in a seg fault, throw exceptions when needed
7. do the standard file logging
8. your code should have no memory leaks, check with valgrind
9. your ouput must work with the viewlist page
10. your insert must not be an AVL insert
to test for leaks
@sleipnir> make clean
@sleipnir> make
@sleipnir> valgrind --leak-check=full ./runme_int
look for
==12988==
==12988== All heap blocks were freed -- no leaks are possible
==12988==