目前最完整的数据结构1800题包括完整答案树和二叉树答案 下载本文

内容发布更新时间 : 2024/5/3 19:32:05星期一 下面是文章的全部内容请认真阅读。

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

{ s=delqueue(Q); father=s.f; for (i=s.l; i<=s.h; i++)

if (in[i]==level[s.lvl]) break;

p=(bitreptr)malloc(sizeof(binode)); //申请结点空间 p->data=level[s.lvl]; p->lchild=null; p->rchild=null; //填写该结点数据 if (s.lr==1) father->lchild=p;

else father->rchild=p; //让双亲的子女指针指向该结点 if (i==s.l)

{p->lchild=null; //处理无左子女

s.lvl=++R; s.l=i+1; s.f=p; s.lr=2; enqueue(Q,s); }

else if (i==s.h)

{p->rchild=null; //处理无右子女

s.lvl=++R; s.h=i-1; s.f=p; s.lr=1; enqueue(Q,s);

}

else{s.lvl=++R; s.h=i-1; s.f=p; s.lr=1; enqueue(Q,s);//左子树有关信息入队列

s.lvl=++R; s.l=i+1; s.f=p; s.lr=2; enqueue(Q,s); //右子树有关信

息入队列

}

}//结束while (!empty(Q)) return(p); }//算法结束

46文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.