def test_find_max_root_is_max(): tree = BinarySearchTree() tree.root = Node(23) tree.root.left = Node(19) tree.root.right = Node(7) tree.root.left.left = Node(5) tree.root.left.right = Node(8) assert tree.find_max_val(tree.root) == 23
def test_efficient(self): t = BinarySearchTree() t.insert(0) t.insert(0) t.insert(0) self.assertEqual(count_paths_efficient(t.root, 0), 6) t.root.item = 1 self.assertEqual(count_paths_efficient(t.root, 1), 3) self.assertEqual(count_paths_efficient(t.root, 0), 3) t.root = Node(2) t.insert(2) t.insert(2) self.assertEqual(count_paths(t.root, 4), 2)