二进制搜索树插入Python

问题描述 投票:0回答:2

我的插入函数怎么了?我传递了我想插入的tr和元素el,但我不断收到错误消息...

def insert( tr,el ):
    """ Inserts an element into a BST -- returns an updated tree """
    if tr == None:
        return createEyecuBST( el,None )
    else:
        if el > tr.value:
            tr.left = createEyecuBST( el,tr )
        else:
            tr.right = createEyecuBST( el,tr )
        return EyecuBST( tr.left,tr.right,tr)

提前感谢。

错误:


ValueError: Not expected BST with 2 elements

这是一个测试功能,基本上告诉我我要放入的东西是否是我想要的东西。

python binary-search-tree
2个回答
1
投票

因此,通常在二叉树中插入的方式是,从根节点开始,然后确定要插入元素的哪一侧,即哪一子树。做出决定后,您将递归


0
投票

由于二进制文件不需要平衡任何内容,因此在遍历每一步时可以编写尽可能简单的逻辑。

© www.soinside.com 2019 - 2024. All rights reserved.