예제 #1
0
def test_remove_internal():
    bst = make_tree()
    pre = bst.preorder()
    i = pre.index(Pair('g'))
    bst.remove(Pair('g'))
    pre = bst.preorder()
    assert pre[i] == Pair('f')
예제 #2
0
def test_postorder():
    bst = make_tree()
    assert bst.postorder()[27] == Pair('W', 13)
예제 #3
0
def test_inorder():
    bst = make_tree()
    assert bst.inorder()[27] == Pair('T', 34)
예제 #4
0
def test_preorder():
    bst = make_tree()
    assert bst.preorder()[27] == Pair('R', 20)
예제 #5
0
def test_remove_leaf():
    bst = make_tree()
    bst.remove(Pair('z'))
    pre = bst.preorder()
    assert pre[-1] == Pair('w')
예제 #6
0
def test_tree_height():
    bst = make_tree()
    assert bst.height() == 11
예제 #7
0
def test_remove_root():
    bst = make_tree()
    bst.remove(Pair('C'))
    pre = bst.preorder()
    assert pre[0] == Pair('D')
예제 #8
0
def test_tree_size():
    bst = make_tree()
    assert bst.size() == 57
예제 #9
0
def test_rebalance():
    bst = make_tree()
    original_height = bst.height()
    tree_data = bst.rebalance()
    assert not original_height == bst.height()
예제 #10
0
파일: test_bst.py 프로젝트: Mstrange8/Trees
def test_postorder():
    bst = make_tree()
    assert bst.postorder()[27] == 'W'
예제 #11
0
파일: test_bst.py 프로젝트: Mstrange8/Trees
def test_inorder():
    bst = make_tree()
    assert bst.inorder()[27] == 'T'
예제 #12
0
파일: test_bst.py 프로젝트: Mstrange8/Trees
def test_preorder():
    bst = make_tree()
    assert bst.preorder()[27] == 'R'