python实现二叉树遍历
来源:互联网 发布:剑三天策捏脸数据 编辑:程序博客网 时间:2024/06/06 02:49
先用python的类表示二叉树的节点:
class Node(object): def __init__(self, root=None, ltree=None, rtree=None): self.root = root self.ltree = ltree self.rtree = rtree
访问树的所有结点,有且仅访问一次。按照根节点位置的不同分为前序遍历,中序遍历,后序遍历。
前序遍历:根节点->左子树->右子树
中序遍历:左子树->根节点->右子树
后序遍历:左子树->右子树->根节点
不同的遍历方式分别对应的python函数实现为:
def pretraverse(tree): if tree == None: return print(tree.root, end='') pretraverse(tree.ltree) pretraverse(tree.rtree)def midtraverse(tree): if tree == None: return midtraverse(tree.ltree) print(tree.root, end='') midtraverse(tree.rtree)def aftertraverse(tree): if tree == None: return aftertraverse(tree.ltree) aftertraverse(tree.rtree) print(tree.root, end='')
有个二叉树举例如下:
输出结果为:
if __name__ == '__main__': tree = Node('a', Node('b', Node('d', rtree=Node('e')), Node('f', ltree=Node('g'))), Node('c')) pretraverse(tree) print('\n') midtraverse(tree) print('\n') aftertraverse(tree)
abdefgcdebgfacedgfbca
0 0
- python实现二叉树遍历
- 二叉树的遍历(python实现)
- 二叉树递归遍历的python实现
- 二叉树与遍历的Python实现
- python实现二叉树的遍历
- Python实现二叉树及遍历方法
- python实现二叉树的遍历
- python实现二叉树,以及二叉树的遍历
- Python 遍历二叉树
- 二叉树遍历 实现
- python实现二叉树和它的七种遍历
- Python实现二叉树遍历方法(leetcode)
- Python实现二叉树及其4种遍历
- Python实现二叉树的递归和非递归遍历
- python实现简单二叉树 及层序遍历
- 二叉树的遍历以及重建(Python实现)
- Python实现: 常用排序算法 & 二叉树的遍历算法
- python实现二叉树及插入,遍历操作
- MFC调节编辑框字体大小
- 不设置宽高,制作按钮,并让文字居中
- 不使用Cygwin,在eclipse中快速开发JNI,一键生成C头文件.h,以及一键使用NDK交叉编译
- Mysql Explain 详解各字段含义
- GeoGlobe JavaScript API地图代码总结
- python实现二叉树遍历
- zz
- SQL中case when
- 操作系统概念 -第七版-重要概念的理解-(64-84)
- 初学者深度学习工作站配置
- 如何设计制作自适应网页
- Android布局优化技巧
- 错误:unindent does not match any outer indentation level
- problem M