python实现二叉树以及二叉树的遍历--1(函数实现)
2017-10-11 14:49
453 查看
#定义叶子节点
class TreeNode(object):
def __init__(self,data,left= None,right= None):
self.data = data
self.left = left
self.right = right
a=TreeNode(3)
b=TreeNode(4)
c=TreeNode(5)
d=TreeNode(6)
#c.right=d
a.left=b
a.right=c
#print a.right.data
print b.left
def pre_travel(node):
if not node:
return
print node.data
pre_travel(node.left)
pre_travel(node.right)
''' 中序遍历 '''
def mid_travel( node):
if not node :
return
mid_travel(node.left)
print node.data
mid_travel(node.right)
'''
后序遍历
'''
def after_travel(node):
if not node:
return
after_travel(node.left)
after_travel(node.right)
print node.data
pre_travel(a)
print '----------------'
mid_travel(a)
print '----------------'
after_travel(a)
class TreeNode(object):
def __init__(self,data,left= None,right= None):
self.data = data
self.left = left
self.right = right
a=TreeNode(3)
b=TreeNode(4)
c=TreeNode(5)
d=TreeNode(6)
#c.right=d
a.left=b
a.right=c
#print a.right.data
print b.left
def pre_travel(node):
if not node:
return
print node.data
pre_travel(node.left)
pre_travel(node.right)
''' 中序遍历 '''
def mid_travel( node):
if not node :
return
mid_travel(node.left)
print node.data
mid_travel(node.right)
'''
后序遍历
'''
def after_travel(node):
if not node:
return
after_travel(node.left)
after_travel(node.right)
print node.data
pre_travel(a)
print '----------------'
mid_travel(a)
print '----------------'
after_travel(a)
相关文章推荐
- 二叉树的建立以及遍历的多种实现(python版)
- python实现二叉树的建立以及遍历(递归前序、中序、后序遍历,队栈前序、中序、后序、层次遍历)
- 二叉树的遍历以及重建(Python实现)
- 《面试》---Python 实现二叉树结构以及相关遍历
- python实现二叉树,以及二叉树的遍历
- python实现二叉树以及二叉树的遍历--1(面向对象的方法实现)
- 「数据结构」二叉树的遍历以及Python实现
- 二叉树的非递归中序遍历以及层序遍历实现
- 二叉树的建立以及前序、中序、后序遍历的递归和非递归实现
- java实现二叉树的构建以及3种遍历方法
- java实现二叉树的构建以及3种遍历方法
- 二叉树建立以及先序、中序、后序、层次遍历(JAVA 实现)
- Python实现二叉树的前序遍历、中序遍历
- 二叉树三种遍历(递归以及非递归实现)
- java实现二叉树的构建以及3种遍历方法
- C#实现二叉树数据结构以及先序、中序、后续遍历
- java实现二叉树的构建以及3种遍历方法
- 二叉树的递归遍历非递归遍历以及其他二叉树的相关操作实现(数据结构)
- C语言实现二叉树的建立、遍历以及表达式的计算
- java实现二叉树的构建以及3种遍历方法