题目:给出二叉树的前序遍历和中序遍历,求后序遍历。
背景知识:前序、中序和后序遍历指的是父节点的遍历顺序。
例如前序为父节点->左子树->右子树,中序为左子树->父节点->右子树,后序为左子树->右子树->父节点
解题思路:
1. 前序的第一个元素为根节点
2. 在中序以根节点划分为左右两个子树
3. 前序中先出现的元素为该子树中的父节点
4. 左、右儿子的判定根据中序的顺序,如果在中序指定元素的右侧,则为右儿子,否则为左儿子
例题:前序为adbgcefh,中序为dgbaechf,则后序为gbdehfca。
若题目给出后序,可以考虑以下特征:
1. 后序的最后一个元素为根节点
2. 后序中后出现的元素为该子树的父节点