2013年江西省数据结构理论与实践高级 联系客服

发布时间 : 星期四 文章2013年江西省数据结构理论与实践高级更新完毕开始阅读b55606359e314332396893ef

else error(“输入错误”); return(bt); }//结束 BiTree

int JudgeComplete(BiTree bt) //判断二叉树是否是完全二叉树,如是,返回1,否则,返回0

{int tag=0; BiTree p=bt, Q[]; // Q是队列,元素是二叉树结点指针,容量足够大 if(p==null) return (1);

QueueInit(Q); QueueIn(Q,p); //初始化队列,根结点指针入队 while (!QueueEmpty(Q))

{p=QueueOut(Q); // if (p->lchild && !tag) QueueIn(Q,p->lchild); // else {if (p->lchild) return 0; // else tag=1; // if (p->rchild && !tag) QueueIn(Q,p->rchild); // else if (p->rchild) return 0; else tag=1; } //while

return 1; } //JudgeComplete

出队

左子女入队

前边已有结点为空,本结点不空 首次出现结点为空 右子女入队