我们以下图的二叉树作为示例来演示二叉树的恢复

根据前序和中序 或者后序和中序 才能复原二叉树,要恢复二叉树必须知道中序序列,只是知道前序和后序,不能恢复二叉树,因为不知道中序序列无法获知根节点的左右子树位置。
目录
首先创建结点和树,以下代码不做过多赘述,如果不清楚可以转入戳他
- class Node {//二叉树结点
- public:
- char m_value;//结点值
- Node* m_left;//左子树
- Node* m_right;//右子树
- Node():m_left(nullptr),m_right(nullptr){}
- Node(char val):m_value(val),m_left(nullptr),m_right(nullptr){}
- ~Node(){}
- };
class Tree {//创建