In this exercise you will implement, in Ruby, several Tree methods.
add(value)
- This method adds a key-value pair to the Binary Search Treefind(value)
- This method returns the matching value for the given key if it is in the tree andNone
if the key is not found in the tree.- Traversals: These methods return an array of dictionaries consisting of all the key-value pairs in the tree in a specific order.
inorder
- This method returns an array of all the elements in the tree, in order.postorder
- This method returns an array of all the elements in a postorder fashion (left, right , root).preorder
- This method returns an array of all the elements in a preorder fashion (root, left, right).
height
- This method returns the height of the binary search tree.
bfs
- This method returns an array with the tree elements in a level-by-level order (see BaseCS on Breadth-First traversal)