根据二叉树的两种遍历求二叉树的结构
2014-10-22 13:38
281 查看
二叉树的前序遍历顺序是:根节点,左树,右树
中序遍历顺序是:左树,根节点,右树
后序遍历顺序是:左树,右树,根节点
上面这棵树的前序遍历是:abfcjm 中序遍历是:fbcamj 后序遍历是:fcbmja
根据前序遍历和后序遍历是不能求出树的唯一结构的,
已知的两种遍历顺序必须必须包括中序遍历,因为中序遍历能够递归的推出根节点的左树和右树
如上题已知 前序遍历是:abfcjm 中序遍历是:fbcamj 那么根据前序遍历就可以知道树根是a,
再根据中序遍历就可以知道以a为根节点左树节点包括fbc右树节点包括mj,
再根据前序遍历的第二个节点可知b是a的左子节点,又根据中序遍历可知b的左树是f右树是c,
重复以上步骤递归求解就可以推出整个树的结构了,
最后根据整个树的结构就可以推出来后续便利的顺序了。
中序遍历顺序是:左树,根节点,右树
后序遍历顺序是:左树,右树,根节点
上面这棵树的前序遍历是:abfcjm 中序遍历是:fbcamj 后序遍历是:fcbmja
根据前序遍历和后序遍历是不能求出树的唯一结构的,
已知的两种遍历顺序必须必须包括中序遍历,因为中序遍历能够递归的推出根节点的左树和右树
如上题已知 前序遍历是:abfcjm 中序遍历是:fbcamj 那么根据前序遍历就可以知道树根是a,
再根据中序遍历就可以知道以a为根节点左树节点包括fbc右树节点包括mj,
再根据前序遍历的第二个节点可知b是a的左子节点,又根据中序遍历可知b的左树是f右树是c,
重复以上步骤递归求解就可以推出整个树的结构了,
最后根据整个树的结构就可以推出来后续便利的顺序了。
相关文章推荐
- 【二叉树】根据两种遍历顺序确定树结构(build-tree)
- 根据二叉树的两种遍历求二叉树的结构
- 数据结构实验之求二叉树后序遍历和层次遍历(根据前序中序还原二叉树)
- 【数据结构与算法】根据遍历结果构建二叉树
- 根据两种不同遍历结果重构二叉树
- 二叉树三种遍历方法(根据两种排序求第三种的顺序)
- 数据结构——根据前序遍历和中序遍历还原二叉树
- 数据结构问题根据广义表创建二叉树的四种遍历方式
- 根据两种遍历顺序确定树结构
- 数据结构上机测试4.1:二叉树的遍历与应用1【根据二叉树的前序序列和中序序列求后序序列方法1,2】
- 根据前序遍历和中序遍历重建二叉树的Java实现
- SDUT-2136数据结构实验之二叉树的建立与遍历
- 数据结构——二叉树的遍历
- 二叉树的先序,中序,和后序遍历用静态和动态两种方法实现
- SDUT-2136 数据结构实验之二叉树的建立与遍历
- (两种结构,两种方式)根据主表ID,查询子表的信息并用逗号分隔 - MS-SQL Server
- 根据前序和中序遍历结果重建二叉树
- 根据二叉树的中序遍序列和后续遍历序列还原一颗二叉树
- 二叉树遍历--遍历顺序推出二叉树结构
- 数据结构复习(层次遍历法复制二叉树)