Exemplo n.º 1
0
from BinarySearchTree import BinarySearchTree as stu

bst = stu()

bst.insert(21)
bst.insert(10)
bst.insert(32)
bst.insert(5)
bst.insert(16)
bst.insert(27)
bst.insert(39)

# print(bst.depth(5))
# print(bst.depth(10))
# print(bst.height(bst.root))
# print(bst.height(bst.root.left))

assert bst.depth(5) == 2
assert bst.depth(10) == 1

assert bst.height(bst.root) == 2
assert bst.height(bst.root.left) == 1

tree = stu()

assert tree.height(tree.root) == -1

tree.insert(1)
#print(tree.height(tree.root))
print(tree.depth(1))
tree.insert(2)
Exemplo n.º 2
0
from BinarySearchTree import BinarySearchTree as stu

bst = stu()

assert bst.is_perfect(bst.root) == True
assert bst.is_degenerate() == False

for i in range(10):
    bst.insert(i)

assert bst.is_degenerate() == True
assert bst.is_perfect(bst.root) == False

bst = stu()

bst.insert(10)
bst.insert(8)
bst.insert(12)
bst.insert(7)
bst.insert(9)
bst.insert(11)

assert bst.is_degenerate() == False
assert bst.is_perfect(bst.root) == False

bst.insert(13)

assert bst.is_degenerate() == False

print(bst.height(bst.root)+1)
print(2**(bst.height(bst.root)+1)-1)
Exemplo n.º 3
0
from BinarySearchTree import BinarySearchTree as stu

bst = stu()

bst.insert(40)
bst.insert(20)
bst.insert(60)
bst.insert(10)
bst.insert(30)
bst.insert(50)
bst.insert(70)

assert bst.search(40, bst.root) == bst.root
assert bst.search(20, bst.root) == bst.root.left
assert bst.search(10, bst.root) == bst.root.left.left
assert bst.search(30, bst.root) == bst.root.left.right

assert bst.search(60, bst.root) == bst.root.right
assert bst.search(50, bst.root) == bst.root.right.left
assert bst.search(70, bst.root) == bst.root.right.right

parent = bst.search(5, bst.root)
assert bst.search(5, bst.root) == bst.root.left.left
assert bst.search(75, bst.root) == bst.root.right.right
assert bst.search(25, bst.root) == bst.root.left.right

bst.remove(40)
print(bst.search(40, bst.root))
print(bst.root.left)
assert bst.search(40, bst.root) == bst.root.left.right
#assert bst.search(25, bst.root) == bst.root
Exemplo n.º 4
0
from BinarySearchTree import BinarySearchTree as stu

tree = stu()
tree.insert(1)
tree.insert(2)
print(tree.min(tree.root))