数据结构,关于二叉树,高手请进!在线等!!!
设有以标准形式存储的二叉树T,请编写两个C函数,分别计算T的高度和宽度。
(注:空的二叉树的高度为-1,非空的二叉树的高度为其左、右子树的高度的较大者加1;空的二叉树的宽度为0,对一棵非空的二叉树各层所包含的结点个数分别进行计数,其中的最大者即为此非空的二叉树的宽度)。
问题点数:20、回复次数:10Top
1 楼idler(告别teenage)(偶是豆子。。。)(歇业休息。。。)回复于 2005-01-18 17:42:18 得分 0
倒Top
2 楼molly1027(女教师)回复于 2005-01-18 17:47:59 得分 0
本题应该不难,可能相关书籍是有的,
但是因为本周六日就要考研试,平时工作忙,复习的时间不多,还有其他3门科目要复习,没有时间研究了。
拜托大家给点提示,最好是完整的程序;如果有点线索的,能从资料上找到的也好啊!
谢谢!Top
3 楼llf_hust()回复于 2005-01-18 17:57:12 得分 10
求二叉树的高度算法实现:
int Depth(struct Node *T)
{
int i, j;
i = 0;
j = 0;
if (!T) return 0;
else
{
i += Depth(T->lchild);
j += Depth(T->rchild);
if( i >= j)
return i+1;
else
return j+1;
}
}
Top
4 楼molly1027(女教师)回复于 2005-01-18 18:45:29 得分 0
谢楼上回复!Top
5 楼molly1027(女教师)回复于 2005-01-18 21:36:34 得分 0
等....
知道的贴一下,还有宽度呢,谢!!!Top
6 楼molly1027(女教师)回复于 2005-01-19 12:08:47 得分 0
知道的贴一下,谢!Top
7 楼dongyuanzhang(阿林)回复于 2005-01-19 12:57:08 得分 5
http://student.zjzk.cn/course_ware/data_structure/web/shu/shu6.1.1.1.htm
基础重要。Top
8 楼pcboyxhy(-273.15℃)回复于 2005-01-19 13:04:49 得分 2
宽度用广度优先搜索Top
9 楼molly1027(女教师)回复于 2005-01-19 17:12:11 得分 0
谢楼上2位提供线索!Top
10 楼yangyu0806(哪儿也没家好)回复于 2005-01-19 17:28:16 得分 3
求二叉树的高度算法实现:
int Depth(struct Node *T)
{
int i, j;
i = 0;
j = 0;
if (!T) return 0;
else
{
i += Depth(T->lchild);
j += Depth(T->rchild);
if( i >= j)
return i+1;
else
return j+1;
}
}
------------------------------------
照楼主的说法,这里面的i,j初值应该分别是1吧Top




