lesson11-3 利用二叉链表表示一棵二叉树,并编写一个算法来计算其高度
发布时间
阅读量:
阅读量
思路1:
非递归方式,
采用层次遍历算法计算二叉树的高度
关键:
1、last指针在何种情况下指向下一层次
代码1:
int getBiTreeDepth(BTNode *t){
//1.创建队列 2.初始化工作=>根节点入队
BTNode *que[MAXSIZE];
int front=-1,rear=-1;//front和rear指针必须是负1,否则front和last永远都不能相遇
int level=0,last=0;//last指针始终指向当前层的最右结点
rear=(rear+1)%MAXSIZE;
que[rear]=t;
BTNode *p;
while(front!=rear){
front=(front+1)%MAXSIZE;
p=que[front];
if(p->lchild){
rear=(rear+1)%MAXSIZE;
que[rear]=p->lchild;
}
if(p->rchild){
rear=(rear+1)%MAXSIZE;
qu
全部评论 (0)
还没有任何评论哟~
