python二叉树遍历的实现方法
时间:2021-09-19 03:53:14
#!/usr/bin/python
# -*- coding: utf-8 -*-
class TreeNode(object):
def __init__(self,data=0,left=0,right=0):
self.data = data
self.left = left
self.right = right
class BTree(object):
def __init__(self,root=0):
self.root = root
def is_empty(self):
if self.root is 0:
return True
else:
return False
def preOrder(self,treenode):
if treenode is 0:
return
print treenode.data
self.preOrder(treenode.left)
self.preOrder(treenode.right)
def inOrder(self,treenode):
if treenode is 0:
return
self.inOrder(treenode.left)
print treenode.data
self.inOrder(treenode.right)
def postOrder(self,treenode):
if treenode is 0:
return
self.postOrder(treenode.left)
self.postOrder(treenode.right)
print treenode.data
n1 = TreeNode(data=1)
n2 = TreeNode(2,n1,0)
n3 = TreeNode(3)
n4 = TreeNode(4)
n5 = TreeNode(5,n3,n4)
n6 = TreeNode(6,n2,n5)
n7 = TreeNode(7,n6,0)
n8 = TreeNode(8)
root = TreeNode('root',n7,n8)
bt = BTree(root)
print 'preOrder......'
print bt.preOrder(bt.root)
print 'inOrder......'
print bt.inOrder(bt.root)
print 'postOrder.....'
print bt.postOrder(bt.root)
结果:
preOrder......
root
7
6
2
1
5
3
4
8
inOrder......
1
2
6
3
5
4
7
root
8
postOrder.....
1
2
3
4
5
6
7
8
root
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Python中的布尔类型bool
Django框架登录加上验证码校验实现验证功能示例
python获取当前计算机cpu数量的方法
python文件写入write()的操作
python实现生成Word、docx文件的方法分析
python 统计代码行数简单实例
三步实现Django Paginator分页的方法
![](https://img.aspxhome.com/file/2023/6/90806_0s.png)
Go语言变量与基础数据类型详情
php通过exif_read_data函数获取图片的exif信息
sqlserver 修改列名及表名的sql语句
JS不同加载方式下的window.onload
![](https://img.aspxhome.com/file/UploadPic/20095/21/j200951902925-22s.gif)
解决python打不开文件(文件不存在)的问题
如何利用Fabric自动化你的任务
PyQt5每天必学之组合框
![](https://img.aspxhome.com/file/2023/2/77602_0s.jpg)
js对象基础实例分析
javascript preload&lazy load
Python实现数据可视化案例分析
![](https://img.aspxhome.com/file/2023/2/90882_0s.png)
suggest项目总结-用户体验篇
![](https://img.aspxhome.com/file/UploadPic/20081/30/2008130203327601s.jpg)
python Selenium等待元素出现的具体方法
打造设计你自己的字体 Ⅱ
![](https://img.aspxhome.com/file/UploadPic/20083/14/200831475213472s.gif)