求二叉树的二叉链表!!
发布网友
发布时间:2022-08-15 13:21
我来回答
共1个回答
热心网友
时间:2023-09-15 18:17
//pre是前序,in是中序,count用来记当前位置
void construct(bitree* Btree,char pre[],char in[],int count,int MAX,int first,int last)
{
int i;
bitree T;
if(count == MAX) return;
else if(first == last) *Btree = NULL;
else
{
T = (bittree*)malloc(sizeof(bittree));
*Btree = T;
T->data = pre[count];
for(i=first;(i<=last) && (in[i]!=pre[count]);i++);
construct(&T->lchild,pre,in,++count,MAX,first,i-1);
construct(&T->rchild,pre,in,++count,MAX,i+1,last);
}
}
思想就这样,可能有点问题,自己调下吧