条件:array=[1,2,3,4,5,6,7,8,9,10]#python实现二叉树的数据结果classTreeNode(object):def__init__(self,x):self.val=xself.left=Noneself.right=NoneclassBinaTree(object):def__init__(self):self.root=Noneself.ls=[]defadd(self,val):node=TreeNode(val)ifself.root==None:self.root=nodeself.ls.append(self.root)else:cur_node=self.ls[0]ifcur_node.left==None:cur_node.left=nodeself.ls.append(cur_node.left)elifcur_node.right==None:cur_node.right=nodeself.ls.append(cur_node.right)self.ls.pop(0)defprescan(self,root):如果root==None:返回打印(root.val)self.prescan(root.left)self.prescan(root.right)if__name__=="__main__":array=[1,2,3,4,5,6,7,8,9,10]bt=BinaTree()forvalinarray:bt.add(val)bt.prescan(bt.root)
