打印后继树

时间:2018-10-12 07:55:30

标签: python python-3.x binary-tree

在打印树的后序时,我一直保持None作为最后一个值 我不知道我做错了哪一部分enter image description here

def postorder(tree):
if tree != None :
    postorder(tree.get_left_subtree())
    postorder(tree.get_right_subtree())
    print(tree.get_value(),end = "")

1 个答案:

答案 0 :(得分:0)

这应该有效:

def postorder(tree):
    if tree.is_empty():
        return ""
    return (
        postorder(tree.get_left_subtree())
        + postorder(tree.get_right_subtree())
        + str(tree.root.value)
    )

请注意,由于我不知道您的树的api,因此我为树组成了一些函数/字段。如果树没有元素,则tree.is_empty()返回Truetree.root.value是当前树的根的值。