Пример #1
0
def test_insert():
    bst = BinarySearchTree()
    rbt = RedBlackTree()

    bst.insert(5)
    rbt.insert(5)

    assert bst.find(5) and rbt.find(5)
Пример #2
0
def test_find_method_in_BST():
    bst = BinarySearchTree(BinarySearchTree.build(SIMPLE_TREE))
    for use_case, expected_result in [
            (8, True),
            (20, True),
            (-1, False),
    ]:
        result = bst.find(use_case)
        assert result == expected_result, "{} != {}".format(result, expected_result)
Пример #3
0
def test_BST():
    t = BinarySearchTree()
    data = list(range(100))
    random.shuffle(data)
    for val in data:
        t.insert(val, val**2)
    for val in range(100):
        assert t.find(val) == val**2
        assert t.find_recursive(t.root, val) == val**2
    assert t.min() == 0
    assert t.max() == 99
Пример #4
0
def test_BST():
    t = BinarySearchTree()
    data = list(range(100))
    random.shuffle(data)
    for val in data:
        t.insert(val, val ** 2)
    for val in range(100):
        assert t.find(val) == val ** 2
        assert t.find_recursive(t.root, val) == val ** 2
    assert t.min() == 0
    assert t.max() == 99
Пример #5
0
def test_bst():
    tree = BinarySearchTree()
    data_list = [random.randint(0, 10000) for _ in range(1000)]
    for elem in data_list:
        tree.insert(elem)

    for elem in data_list:
        assert tree.find(elem).data == elem

    assert is_bst(tree)
    for elem in data_list:
        tree.delete(elem)
        assert is_bst(tree)
Пример #6
0
def test_find():
    bst = BinarySearchTree()
    rbt = RedBlackTree()

    assert bst.find(5) is None and rbt.find(5) is None