python 写二叉树遍历

本文通过Python实现了一个简单的二叉树结构,并演示了如何进行前序、中序及后序遍历。通过实例化的树节点,构建了一棵特定的二叉树,并依次展示了三种不同的遍历方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在[url]http://www.python.org/[/url]下载了编译器,很方便、好用



#树节点类----------------------------------------
class TreeNode(object):
#初始化构造函数
def __init__(self,data,left,right):
self.data=data
self.left=left
self.right=right
pass

pass

#树----------------------------------------------
class Tree(object):

#获取树
def get(self):
n9=TreeNode('n9','','')
n8=TreeNode('n8','','')
n7=TreeNode('n7','','')
n6=TreeNode('n6',n8,n9)
n5=TreeNode('n5','','')
n4=TreeNode('n4','','')
n3=TreeNode('n3',n6,n7)
n2=TreeNode('n2',n4,n5)
n1=TreeNode('n1',n2,n3)
return n1
pass


#前序遍历
def preOrder(self,ref):
if ref=='':
return
print ref.data
self.preOrder(ref.left)
self.preOrder(ref.right)

pass

#中序遍历
def inOrder(self,ref):
if ref=='':
return
self.inOrder(ref.left)
print ref.data
self.inOrder(ref.right)
pass

#后序遍历
def postOrder(self,ref):
if ref=='':
return
self.postOrder(ref.left)
self.postOrder(ref.right)
print ref.data
pass

pass
#----------------------------------------------------------
#实例化树
tree=Tree()
#获取一棵建好的树
t1=tree.get()

#前序遍历
print '前序遍历'
tree.preOrder(t1)

#中序遍历
print '中序遍历'
tree.inOrder(t1)

#后序遍历
print '后序遍历'
tree.postOrder(t1)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值