由前序和中序确定二叉树 数据结构中序和后序怎么画二叉树?
数据结构中序和后序怎么画二叉树?
例如
中间顺序:dgbaechf//左根右根
后顺序:gdbehfca//左根和右根
(1)确定根
从后顺序获取
中间顺序:(DGB)a(echf)后顺序:(GDB)(ehfc)a
(2)确定左节点
从顶部已知,左节点没有节点
(3)确定右节点
中间顺序[(E)C(HF)]后置顺序:[(E)(HF)C]
确定整棵树为
---a-------------]---B-------------C-------------D-------------E-------------f-------------]---g-------------H----------
一棵二叉树可以由两次遍历的顺序唯一确定。例如,给定一个二叉树,前序序列是abdecfg,中序序列是dbeafcg。二叉树的根可以由前序序列确定为a,因为前序遍历顺序是从根到左子树再到右子树。从中序序列可以看出DBE在a的左子树中,FCG在a的右子树中,因为B在前序序列中跟随a,所以B必须是a的左子树的根。在前序序列中,a的左子树是DBE。前序序列的遍历顺序为:左子树、父子树和右子树。我们可以看到D是B的左子树,E是B的右子树。我们也可以分析根a的右子树。前序序列中的ABDE已经遍历了根和左子树,所以剩余的CFG就是右子树遍历的序列。可以看出,C是右子树的根,f是C的左子树,G是C的右子树,因此,二叉树的序列遍历顺序应该是ABCDEFG。
由前序和中序确定二叉树 串的nextval数组怎么算 中序二叉树线索化详细解释
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。