`
lilisalo
  • 浏览: 1108459 次
文章分类
社区版块
存档分类
最新评论

已知二叉树的中序遍历,后序遍历画出二叉树

 
阅读更多

首先理解概念:前序遍历:访问根结点的操作发生在遍历其左右子树之前。中序遍历:访问根结点的操作发生在遍历其左右子树之中(间)。后序遍历:访问根结点的操作发生在遍历其左右子树之后。来看你的题目:1.由后序遍历5、4、2、6、8、9、7、3、1可知根为12.在中序遍历4、5、2、1、6、3、8、7、9中找到1,可知(左)452-1-63879(右)对左右支分别重复上述步骤,即在后序遍历中观察452的相对位置可知2为根,则有45-2-空在后序遍历中观察63879的相对位置可知3为根,则有6-3-879……由此可得出树的结构为------------------------------1---------2L 3R----4L 空 6L 7R-空 5R 空 空 8L 9R图中L表示左,R表示右,用空格区分位置。

步骤:后序最后一个值为1,则表示根节点为1。查看中序由1,分割成 452 和 63879 两棵子树。 对“左子树”---中序452和后序542,得到根节点为2。中序452表明45组成2的左子树,根节点为4,5为4的右子树。对“右子树”---中序63879和后序68973,得到根节点为3。6为左子树,右子树为--中序879和后序897。所以根节点为7,左子树为8,右子树为9。所以最后是 1 / \ 2 3 / / \ 4 6 7 \ / \ 5 8 9

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics