已知两种二叉树求原始二叉树
通过先序和中序 或者 中序和后序 可以还原出原始二叉树
通过先序和后序无法还原出原始二叉树
已知先序中序求后序
例1:
先序:ABCDEFGH
中序:BDCEAFHG
求后序
思路:
1,先序中第一个出现的一定为根节点->A
2,在中序中找出A,
A的左边为左子树,A的右边为右子树
-> BDCE A FHG
3,找出左子树BDCE的根节点
然后在看先序中哪个先出现哪个就为根节点
所以B为根节点
4,在中序中找出B
B的左边没有节点,所以B只有右子树
->DCE
5,DCE中,C先在先序中出现,所以C为根,
D,E分别为左右子树
6,同理求出右子树
7,后序:DECBHGFA
例2:
先序:ABDGHCEFI
中序:GDHBAECIF
后序:GHDBEIFCA
已知中序后序求先序
例1:
中序:BDCEAFHG
后序:DECBHGFA
求先序
先序:ABCDEFGH
通过先序和中序 或者 中序和后序 可以还原出原始二叉树
通过先序和后序无法还原出原始二叉树
已知先序中序求后序
例1:
先序:ABCDEFGH
中序:BDCEAFHG
求后序
思路:
1,先序中第一个出现的一定为根节点->A
2,在中序中找出A,
A的左边为左子树,A的右边为右子树
-> BDCE A FHG
3,找出左子树BDCE的根节点
然后在看先序中哪个先出现哪个就为根节点
所以B为根节点
4,在中序中找出B
B的左边没有节点,所以B只有右子树
->DCE
5,DCE中,C先在先序中出现,所以C为根,
D,E分别为左右子树
6,同理求出右子树
7,后序:DECBHGFA
例2:
先序:ABDGHCEFI
中序:GDHBAECIF
后序:GHDBEIFCA
已知中序后序求先序
例1:
中序:BDCEAFHG
后序:DECBHGFA
求先序
先序:ABCDEFGH