二叉树的重构是指给定二叉树的先序遍历,中序遍历,后序遍历中的任意两者,要求恢复二叉树的结构。
其中,除非二叉树是真二叉树(即任一节点要么具有两个子节点,要么没有子节点),否则,必须要有中序遍历才能恢复二叉树的结构。
先序遍历+中序遍历:
后序遍历+中序遍历:
由图示可知,根据先序遍历或者后序遍历,可以确定根节点,再通过此根节点,再中序遍历中可以确定左子树和右子树,从而可以减小问题的规模,递归求解问题。
如果二叉树不是真二叉树,如果没有中序遍历,只有先序遍历和后序遍历是不能对二叉树进行重构的ÿ