非递归求二叉树的高度
void BiDepth(BiTree &T){
BiTree bit;
int last=0,level=0;
Queue q;
q.rear=-1;
q.front=-1;
if(!T){
return ;
}
q.rear++;
q.b[q.rear]=T;
while(q.front<q.rear){
q.front++;
bit=q.b[q.front];
if(bit->lchild){
q.rear++;
q.b[q.rear]=bit->lchild;
}
if(bit->rchild){
q.rear++;
q.b[q.rear]=bit->rchild;
}
if(last==q.front){
level++;
last=q.rear;
}
}
printf("二叉树的高度:%d\n",level);
}//非递归求二叉树高度
原文:https://www.cnblogs.com/Yshun/p/11296331.html