我用非递归建立了一个二叉树classNode(object):def__init__(self,value):self.left=Noneself.right=Noneself.value=valueclassMyBST(object):def__init__(self):self.empty=Truedefad...
我用非递归建立了一个二叉树
class Node(object):
def __init__(self, value):
self.left = None
self.right = None
self.value = value
class MyBST(object):
def __init__(self):
self.empty = True
def add(self, value):
if self.empty:
self.root = Node(value)
self.empty = False
cur = self.root
while (True):
if value > cur.value:
if cur.value != None:
cur = cur.right
else:
newNode = Node(value)
cur.right = newNode
break
elif value < cur.value:
if cur.value != None:
cur = cur.left
else:
newNode = Node(value)
cur.left = newNode
break
else:
cur.value = value
break
但是每次只能add一个数
再add的时候就会出现错误提示AttributeError: 'NoneType' object has no attribute 'value'
哪个大哥可以改好这个二叉树啊
能在这个二叉树的基础上给一个中序遍历的示范么
谢谢啦
展开