主题:急急急!!!!!求二叉树的高度的算法!!
aij123
[专家分:0] 发布于 2006-12-06 00:18:00
1、要求采用二叉链表作为存储结构,完成二叉树的建立、前序、中序、后序和按层遍历的操作,并求出二叉树的高度、所有叶子及树结点总数的算法,输出二叉树的广义表表示。
A
/ \
/ \
B C
/ \ /
D E F
/ \
G H
我就二叉树的高度不会,大大们帮帮忙。
回复列表 (共8个回复)
沙发
leolhc [专家分:430] 发布于 2006-12-06 01:20:00
int high(bitre bt)
{
if (bt==null) return(0);
else
return(1+max(high(bt->lchild),high(bt->rchild)));
}
板凳
aij123 [专家分:0] 发布于 2006-12-06 01:49:00
return(1+max(high(bt->lchild),high(bt->rchild)));??
这是什么?
3 楼
leolhc [专家分:430] 发布于 2006-12-06 10:19:00
汗,还要把max函数也编给你啊
int max(int a,int b)
{
if (a>=b) return(a);
else return(b);
}
4 楼
aij123 [专家分:0] 发布于 2006-12-06 16:48:00
在主函数中,如何输出retrun的值?
5 楼
aij123 [专家分:0] 发布于 2006-12-06 16:49:00
在主函数中,如何输出return的值?
6 楼
好无聊 [专家分:2800] 发布于 2006-12-06 17:57:00
void Deep(BtNode *&Bt,int j)
{
if(Bt)
{
j++;
if(deep<j)
deep=j;
Deep(Bt->lchild,j);
Deep(Bt->rchild,j);
}
}
7 楼
leolhc [专家分:430] 发布于 2006-12-07 00:15:00
很难相信楼主只有树的高度不会求。我已经后悔给你解答了,我害了你,我不该意识不到你是在求作业。
8 楼
aij123 [专家分:0] 发布于 2006-12-07 02:39:00
不关怎样,都要谢谢你,给我写出这个程序来.
我的确是在做作业,但我真的在书上找不有关求树的高度啊!!
我来回复