得伟和牧田:如何推算第三种遍历

来源:百度文库 编辑:神马品牌网 时间:2024/04/29 09:01:39
比如给定中序遍历和后序遍历,如何推出前序遍历?
不要程序说明.
比如一个二叉树中序遍历为DABEC,后序为DEBAC,那么前序是什么?

应该先看后序遍历里最后一个应该是整个树的根,那么你的例子中c就是根,再看中序遍历,c的左子树的所有节点应该在她前面,右子树的所有节点都在他后面。例子中中序遍历c后面没有说明他只有左子树部分(dabe),那么我们再看他的左子树对应的后序为(deba)以同样的分析方法知道接下来a为根,d是a的左节点,be是右节点,且b为根,e为b的右节点,所有找到了树的结构就知道前序遍历的结果为cadbe