def tree(): ''' 10 0 15 -2 4 18 ''' t = Tree() for n in (10, 15, 0, 4, 18, -2): t.insert(n) return t
def test_insert_and_search(self): bst = Tree() bst.insert(5) self.assertEqual(bst.search(5), True) bst.insert(15) self.assertEqual(bst.search(15), True) bst.insert(6) bst.insert(7) self.assertEqual(bst.search(6), True)
import sys from os import path sys.path.append(path.dirname(path.dirname(path.abspath(__file__)))) from binary_search_tree import Tree #from .binary_search_tree import Tree bst = Tree() bst.insert(10) print(bst.insert(15)) bst.preorder() bst.postorder() bst.inorder()
import sys from os import path sys.path.append( path.dirname( path.dirname( path.abspath(__file__) ) ) ) from binary_search_tree import Tree #from .binary_search_tree import Tree bst = Tree() bst.insert(10) print(bst.insert(15)) bst.preorder() bst.postorder() bst.inorder()
# print("Left greater than root") raise Exception else: left = None if left and right: if right < left: # print("Left greater than right") raise Exception else: return True is_valid(root.right) is_valid(root.left) if __name__ == "__main__": tree = Tree() tree.insert(1) tree.insert(2) tree.insert(10) tree.insert(6) try: is_valid(tree.root) except: print("Tree is invalid") invalid_root = Node(2) right = Node(4) left = Node(5) invalid_root.right = right invalid_root.left = left try: