Make sure you keep the overloaded operator << and printTree() methods provided in the map.cpp file
unchanged, in order for the graders to verify your results. A good starting point for this assignment is
to take what you did for Assignment 9P, add pieces from Lab 9 where you had a simple AVL tree
written under the hood of a Set ADT, and make some modifications for threads in the rotation/height
To test your program, you can reuse the test cases for Assignment 9, excluding the tests for erase()
method. You should check the tree printout and verify the AVL tree is correct.
Note that the std::map() container can only be used as in the starter code of Assignment 9. Other
usages of STL containers are not allowed. In addition, you must implement an AVL tree in this
assignment, not any other types of balanced search tree (for example, a Red-Black tree).
Some notes on grading:
– Programs are graded for correctness (output results and code details), following directions
and using specified features, documentation and style.
– To successfully pass the provided sample tests is not an indication of a potential good grade; to
fail one or more of these tests is an indication of a potential bad grade.
– You must test thoroughly your program with your own test data/cases to ensure all the
requirements are fulfilled. We will use additional test data/cases other than the sample tests
to grade your program.
– Here is a tentative grading scheme.
map test run 1 15
map test run 2 15
map test run 3 12
map test run 4 12
map test run 5 12
map test run 6 12
map test run 7 10
map test run 8 12
each test includes 3 pts for valgrind
check except for test run 7