一点点都不难~
已知:前序和中序,求后序
前序:ABCDEFGHIJ
中序:CBAEFDIHJG
解题思路:
||逻辑:好好理解这3句话就够了,无非是用前序判断根结点,用中序判断左右子树。So easy!
1. 前序:第一个结点A是根结点,是后序的最后一个结点
2. 前序:子树的第一个结点为子树根结点
3. 中序:根据前序的根节点,判断是否有左右子树。
例如:根结点A,在中序中判断有左右子树,左侧为左子树(CB)A右侧为右子树(EFDIHJG)
左子树CB 在前序中的顺序为BC,所以按性质2,B为子树根结点,性质3,B根结点只有左子树C。
解决方案:
前序:ABCDEFGHIJ
中序:CBAEFDIHJG
后序:
后序:CBFEIJHGDA