相当于,给你二叉树的后序遍历和中序遍历,求先遍历右子树,再遍历左子树,再遍历根。
其实上面这个遍历就是前序遍历的逆。直接求前序遍历,然后从后往前输出即可。
这个遍历我想了好久,需要用递归,但是开始不知道往哪个方向上想。后来搜了下,瞟了一眼。今早在实验室想了一个多小时,终于想出来了。
从后序遍历中找到根,然后在中序遍历的相应位置找到分成的两棵子树,然后再进行遍历。
递归真的很神奇~!
我的四个参数分别是在中序里的起点终点,还有后序里的。
因为树的位置在两个序列里不一定相同,需要分别记录。