我的插入函数怎么了?我传递了我想插入的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
这是一个测试功能,基本上告诉我我要放入的东西是否是我想要的东西。
因此,通常在二叉树中插入的方式是,从根节点开始,然后确定要插入元素的哪一侧,即哪一子树。做出决定后,您将递归
由于二进制文件不需要平衡任何内容,因此在遍历每一步时可以编写尽可能简单的逻辑。