二叉树的前序遍历顺序是:根节点,左树,右树
中序遍历顺序是:左树,根节点,右树
后序遍历顺序是:左树,右树,根节点
上面这棵树的前序遍历是:abfcjm 中序遍历是:fbcamj 后序遍历是:fcbmja
根据前序遍历和后序遍历是不能求出树的唯一结构的,
已知的两种遍历顺序必须必须包括中序遍历,因为中序遍历能够递归的推出根节点的左树和右树
如上题已知 前序遍历是:abfcjm 中序遍历是:fbcamj 那么根据前序遍历就可以知道树根是a,
再根据中序遍历就可以知道以a为根节点左树节点包括fbc右树节点包括mj,
再根据前序遍历的第二个节点可知b是a的左子节点,又根据中序遍历可知b的左树是f右树是c,
重复以上步骤递归求解就可以推出整个树的结构了,
最后根据整个树的结构就可以推出来后续便利的顺序了。
本文出自 “开发者” 博客,请务必保留此出处http://tang1513.blog.51cto.com/7678175/1566669
原文地址:http://tang1513.blog.51cto.com/7678175/1566669