예제 #1
0
def test_max_depth_top_down():
    assert max_depth_top_down(get_n_nary_tree()) == 4
예제 #2
0
def test_max_depth_bottom_up():
    assert max_depth_bottom_up(get_n_nary_tree()) == 4
def test_preorder_traversal():
    root = get_n_nary_tree()
    assert preorder_traversal(root) == [1, 2, 5, 7, 6, 3, 8, 4, 9, 10, 11, 12]
def test_encode_decode():
    tree = get_n_nary_tree()
    values = get_n_ary_tree_values(tree)
    assert get_n_ary_tree_values(decode(encode(tree))) == values
def test_postorder_traversal_iterative():
    assert postorder_traversal_iterative(get_n_nary_tree()) == [7, 5, 6, 2, 8, 3, 9, 10, 12, 11, 4, 1]
    assert postorder_traversal_iterative(None) == []
def test_level_order_traversal():
    assert level_order_traversal(get_n_nary_tree()) == [[1], [2, 3, 4],
                                                        [5, 6, 8, 9, 10, 11],
                                                        [7, 12]]