Program Deadline: March 4
Build a binary search tree, using links (not an array) for 15 records. The data in these records will hold names and their associated weights. Read the data from the screen.
Required functionality (Each # should be seperate methods):
1. Build the tree from the unique set of names(names are the key value) and their associated weights.
2. Execute a preorder traversal
3. Execute an inorder traversal
4. Execute a postorder traversal
5. Find and print the height of the tree using recursion, do not add a height variable to the tree structure, the algorithm stack should hold this.
6. Determine the number of leaves and print the result (remember a leaf has no children).
7. Implement search functionality that will search for a name and indicate the weight for that individual if they exist in the structure, otherwise stating no match exists.
8. Determine the lowest, highest and average weights contained in the tree.
9. Find the first name in alphabetical order (this should not go through every node, unless the tree happens to be a linked list).