二叉树的用法 前序 中序 后序
2017-07-18 本文已影响80人
大斑马小斑马
二叉树的用法 如何 根据二叉树写他的前序 中序 后续
如何根据前序 中序 后续 还原 二叉树
首先记住一点 前序 中序 后续 的排列顺序
1.0 前序 根 ----> 左 -----> 右
2.0 中序 左 ----> 根 -----> 右
3.0 后序 左 ----> 右 -----> 根
一个二叉树的前序遍历是AEFBGCDHIKJ,中序遍历是EFAGBCHKIJD,求此二叉树的后续遍历 ???
网上关于这个是有答案的,但是 只知道答案 不知道原理 属于死记硬背 下面 我来说一下原理
前序 AEFBGCDHIKJ 根 ----> 左 -----> 右
中序 EFAGBCHKIJD 左 ----> 根 -----> 右
通过文字描述的话 太麻烦 通过图片的话 也麻烦 咋办 怎样写 其实明白了 很简单 这个规律 我该如何告诉你们???
我也得写下来记录一下 不然以后我就忘了
前序 AEFBGCDHIKJ 根 ----> 左 -----> 右
中序 EFAGBCHKIJD 左 ----> 根 -----> 右
1.0 首先 A 为 根 我相信都没有异议(不懂的话 我也帮不了你)
2.0 从前序考虑 前三个 根左右 A(根) E(左) F(右) 但是考虑一下中序 左根右 E(左) F(根)A(右) A 肯定为根 所以 可以确定 A(根) E(左) F(右)
越写越麻烦 根本没法写下去 这写下去 是人也会把你逼疯 真是蛋疼 我还想记录一下
草 试了几种方式 还是没办法 最简单 最明了的说明
不管了 我上传些图片 自己搞
直接写后序 不想搞了 我一步一步的写后序的排序 如果看得懂希望对你有帮助 如果看不懂我也没办法 太难搞了 看懂后序 前序 中序 你们就也懂了
后续 左 ----> 右 ----> 根
1.0 EBA
2.0 FEBA
3.0 FEGCBA
4.0 FEGDCBA
5.0 FEGHDCBA
6.0 FEGIHDCBA
7.0 FEGKJIHDCBA (最终结果)
前序 根----> 左----> 右
1.0 AEB
2.0 AEFB
3.0 AEFBGC
4.0 AEFBGCD
5.0 AEFBGCDH
6.0 AEFBGCDHI
7.0 AEFBGCDHIKJ (最终结果)
中序 左----> 根----> 右
1.0 EAB
2.0 EFB
3.0 EFAGBC
4.0 EFAGBCD
5.0 EFAGBCHD
6.0 EFAGBCHID
7.0 EFAGBCHKIJD (最终结果)
仔细看 有规律 很简单 要是实在看不懂 我也没办法 仁至义尽