数据结构day22

阅读 63

2022-04-13

C语言数据结构代码练习day22

做做王道的题

设一棵二叉树采用二叉链表的存储方式,设计一个非递归的求二叉树高函数

int btdeepth(Bitree T){
	if(T==NULL)
		return 0;		//树空
	int front=-1,rear=-1;		//设置队头队尾指针
	int last=0,level=0;
	Bitree Q[Maxsize];
	Q[++rear]=T;		//根节点入队
	Bitree p;
	while(front<rear){
		p=Q[++front];
		if(p->lchild)
			Q[++rear]=p->lchild;		//左孩子入队
		if(p->rchild)
			Q[++rear]=p->rchild;		//右孩子入队		
		if(front==last){		//该层最右结点
			level++;		//层数+1
			last=rear;		//last指向下一层
		}
	}
	return level;
}

精彩评论(0)

0 0 举报