大家好,小信来为大家解答以上问题。后序遍历是怎么遍历的,后序遍历很多人还不知道,现在让我们一起来看看吧!
1、 图,举例说明。知道中序和后序遍历,画二叉树,写前序遍历。
2、 从后序遍历我们知道最后一个一定是根节点,所以A是根。结合中序遍历可以知道HDMIBJNE是A的左子树,FKCG是右子树。
3、 先看A的右子树。右边子树的中间顺序遍历是FKCE,后序遍历: KFGC。然后从后序遍历看A的右子树部分KFGC,所以C是根。从中序遍历我们知道,FK是C的左子树,G是C的右子树,如图所示
4、 用同样的方法,C的左子树,中序:FK,后序:KF。可以得出F是根,那么K只能是F的右子树,此时如图,A的右子树部分出来了。
5、 再看,A的左子树部分HDMIBJE,中间顺序:HDMIBJNE,后面顺序:HMIDNJEB。后序遍历,我们知道B是根节点,那么结合中序遍历就可以知道HDMI是B的左子树部分,JNE是B的右子树部分。
6、 然后看B的左子树部分,HDMI,中序:HDMI,逆序:HMID。可以看出,D是根,H是D的左子树,MI是D的右子树部分,如图。
7、 看到D的右子树,中序和后序都是MI。根据逆序中中序的特征,可以知道根只能是I,M是I的左子树。
8、 再看B的右子树部分JNE,中序:JNE,后序:NJE,后序说明E是根,中序说明E没有右子树,只有JN是E的左子树部分
9、 最后看JN中间顺序:JN,后面顺序:NJ。根据后序的特点,J是根,中序表示N是J的右子树,那么整个二叉树就出来了,如图。
本文到此结束,希望对大家有所帮助。
标签:
免责声明:本文由用户上传,如有侵权请联系删除!