信奥常考点:二叉树的构建(已知中序和 前序或后序 的情况下)
一、题目引入
这是来自CCF-GESP C++七级认证 2024年9月的题目。
我们在此不解题,只把树画出来。
CCF-GESP 编程能力认证 C++ 七级 2024年9月份详细解析-CSDN博客
二、解题过程
我们可以根据先序遍历得出根节点是A,然后我们得到了A的左子树[B D](橙色方框)和A的右子树[C E G H F](绿色方框),如下图。
这个时候,我们可以大致画出一颗树,其中[B D]是左子树(橙色部分),[C E G H F]是右子树
然后我们再次得出A的左子树是以B(褐色)为根节点,D为左子节点(左子树)
于是我们可以得出这棵树的左子树:
接着考虑根节点的右子树,它的根节点是C,[H G E]是C的左子树,[F]是C的右子节点(右子树)。