python实现二叉树遍历(前序遍历中序遍历后序遍历)

Posted Data+Science+Insight

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python实现二叉树遍历(前序遍历中序遍历后序遍历)相关的知识,希望对你有一定的参考价值。

python实现二叉树遍历(前序遍历、中序遍历、后序遍历)

 

在计算机科学中,二叉树是一种树数据结构,其中每个节点最多有两个子节点,称为左子节点和右子节点。使用集合理论概念的递归定义是(非空)二叉树是元组(L, S, R),其中L和R是二叉树或空集,而S是包含根的单例集。一些作者也允许二叉树是空集。

 

三种常用的遍历方式:

1. 前序遍历。先访问根结点,再前序遍历左子树,最后前序遍历右子树。可见,这个操作的定义就是递归的。

2. 中序遍历。先中序遍历左子树,再访问根结点,最后中序遍历右子树。由于左子树上的值都比根结点小,右子树上的值都比根结点大,所以,中序遍历一棵树所得到的结果,是从小到大有序的,可以根据这个特点,来检验你的中序遍历是否正确实现了。

3. 后序遍历。先后序遍历左子树,再后序遍历右子树,最后访问根结点。

 

前序遍历

            

  以上面这张图为例:我们讲讲树的三种遍历方式:

  先序遍历:先访问根节点,然后访问左孩子,最后访问右孩子。

  所以,上面遍历的结果是:GEDACHS。

以上是关于python实现二叉树遍历(前序遍历中序遍历后序遍历)的主要内容,如果未能解决你的问题,请参考以下文章

python实现二叉树遍历(前序遍历中序遍历后序遍历)

python根据二叉树的前序遍历和中序遍结果历重建二叉树

遍历问题 codevs

二叉树中,啥是前序,中序。后序!

什么是中序遍历?

二叉树遍历问题(前序,中序,后序)