Download code for the AVL tree and then add the following:
1. A function that tests any arbitrary binary tree to see if it is a valid AVL tree, i.e. if it is a binary search tree with the AVL property. All nodes should have height set to zero initially. The function should set heights to the correct values as it checks the tree.
2. A nonrecursive version of the insert function.
## Deliverables
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Installation package that will install the software (in ready-to-run condition) on the platform(s) specified in this bid request.
3) Exclusive and complete copyrights to all work purchased. (No GPL, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site).
I'll provide the stl source that you might need including AVL tree code.
1. Programs must be written C++.
2. Follow the programming style illustrated in the text. In particular:
1. Divide your program into header (.h) files giving interface information and implementation (.cpp) files showing details.
2. Comment your code thoroughly.
3. Indent and use blank lines to emphasize structure and enhance readability.
3. Programs will be evaluated on validity, efficiency, modularity, clarity and also on the quality of the external interface--ease of use, output formatting, etc.
4. Program submissions must be made in laser-quality format. In each case, submit the following, in this order:
1. A cover sheet with your name and a brief, typed summary of results.
2. Commented sample runs.
3. Source code: main program, followed by header files, followed by implementation files. Be sure file names are noted at the top of each page.
## Platform
windows 95, 98, 2000, ME, XP