今天刷剑指offer,遇到一题关于二叉树前中后序的,所以就想整理一下二叉树前中后序的概念,内容是从别处复制的,不是原创,方便以后自己遗忘了复习用。
https://blog.csdn.net/Ink4T/article/details/75127726
- 认知
前缀表达式=前序遍历;
中缀表达式=中序遍历;
后缀表达式=后序遍历;
说法不同,但是实际意义是相同的。 - 如何进行遍历
直接上案例,通过案例就可以知道是如何遍历的了:
那么对上面这个树进行前中后序遍历,结果如下:
前序遍历: -**ab+cde
中序遍历: ((a*b)*(c+d))-e (这里符号有优先级就在此处加上了括号)
后序遍历: ab*cd+*e-
看了上面的例子以及图上例子,我们也已经差不多懂了如何一个顺序进行各种遍历了,下面列出来是前中后序遍历的书面概念:
- 前序遍历:先遍历根结点,然后遍历左子树,最后遍历右子树。
- 中序遍历:先遍历左子树,然后遍历根结点,最后遍历右子树。
- 后序遍历:先遍历左子树,然后遍历右子树,最后遍历根节点。