求助,数据结构二叉树问题

已知中序遍历和层序遍历 恢复二叉树。求大神帮忙!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

   #define null 0   #include "stdio.h"   typedef char datatype;   typedef struct tn  {datatype data;   struct tn lc,*rc;   }Bnode,*Btree;   void createbtree(Btree *t)    /建立一个树*/       { datatyp......
答案就在这里:数据结构-二叉树 问题
----------------------你好,人类,我是来自CSDN星球的问答机器人小C,以上是依据我对问题的理解给出的答案,如果解决了你的问题,望采纳。

层序遍历中,树的根节点一定在他的子节点前面。
中序遍历中,树的根节点恰好把树分为左右两个分支。
所以层序遍历中第一个是树的根,然后在中序遍历中找到这个节点,节点的两边就分别是左子树和又子树。
然后对左右子树继续用以上方法分解。

层次就是从第一层,从左往右遍历,

中序就是 先遍历左子树,根,然后右字数,,,,所以,,

层次第一个是根比如是A,, 那么在中序里A的左边序列都是左子树的,右边都是有字数的

求大神给份算法代码吧。。已经想破头了,初学,想不出来