根据二叉树序列构造二叉树

来源:互联网 发布:淘宝宝贝视频上传 编辑:程序博客网 时间:2024/05/21 22:43
已知一棵二叉树的前序序列和中序序列,构造该二叉树的过程如下:
1. 根据前序序列的第一个元素建立根结点;
2. 在中序序列中找到该元素,确定根结点的左右子树的中序序列;
3. 在前序序列中确定左右子树的前序序列;
4. 由左子树的前序序列和中序序列建立左子树;
5. 由右子树的前序序列和中序序列建立右子树。
已知一棵二叉树的后序序列和中序序列,构造该二叉树的过程如下:
1. 根据后序序列的最后一个元素建立根结点;
2. 在中序序列中找到该元素,确定根结点的左右子树的中序序列;
3. 在后序序列中确定左右子树的后序序列;
4. 由左子树的后序序列和中序序列建立左子树;
5. 由右子树的后序序列和中序序列建立右子树。
例如:已知二叉树的中序序列BDCEAFHG , 后序序列DECBHGFA。
先序:EBADCFHGIKJ->根:E
根据根结点来划分中序序列
中序:ABCDEFGHIJK->ABCD+E+FGHIJK
由左右子树的结点集合来划分先序序列->先序:E+BADC+FHGIKJ
分别对左右子树运用相同的方法分解出根和其左右子树的结点集合。依次递归
0 0
原创粉丝点击