问答题
算法填空题:(每空5分,共40分) 函数creat用中序序列和后序序列构造二叉树。 设有定义: typedef struct Bnode { int data; struct Bnode *Lson, *Rson; } Bnode, *Bptr; 主调语句为:root=creat(a,b,0,n-1,0,n-1); Bptr creat(int a[],int b[],int i,int j,int s,int t) //数组a[n]和b[n]分别存储二叉树的后序序列和中序序列 { int k; Bptr p; if(i>j) return NULL; p=(Bptr)malloc(sizeof(Bnode)); p->data= (1) ; k=s; while(( (2) )&&(b[k]!=a[i])) (3) ; //找根结点 if(b[k]!=a[j]) { printf(“ERROR!/n”); exit(1); } (4) =creat(a,b,i, (5) ,s, (6) ); p->Rson=creat(a,b, (7) ,j-1,k+1,t); (8) ; }