综合区
|
互联网
|
软件使用
|
杀毒与木马防治
|
硬件
|
操作系统
|
网络资源
|
程序编写
|
计算机爱好者乐园
»
程序编写
» C语言问题:一棵二叉树中共有90个叶子结点与10个度为1的结点,则该二叉树中的总结点数为?
‹‹ 上一主题
|
下一主题 ››
发新话题
发布投票
发布商品
发布悬赏
发布活动
发布辩论
发布视频
打印
C语言问题:一棵二叉树中共有90个叶子结点与10个度为1的结点,则该二叉树中的总结点数为?
613187
新手上路
个人空间
发短消息
加为好友
1
#
大
中
小
发表于 2008-8-26 05:03
只看该作者
C语言高手帮忙解答一下吧,列出具体过程,万分感谢!
UID
145233
帖子
0
精华
0
积分
0
阅读权限
10
在线时间
0 小时
注册时间
2008-8-26
最后登录
2008-8-26
查看详细资料
TOP
幽雅乞丐
新手上路
个人空间
发短消息
加为好友
2
#
大
中
小
发表于 2008-8-26 05:03
只看该作者
设总的节点数位n,度为2的节点数为m,则根据下面两个条件可得:
1。度为2的节点数+度为1的节点数+叶子节点数=总节点数
2。一个二叉树共有总节点数-1个叉,每个度为2的节点有2个叉,度为1的节点有1个叉,叶子节点没有叉,所以可知度为2的节点数*2+度为1的节点数=总节点数-1
由上述可得方程组:
m+10+90=n
m*2+10=n-1
联力计算可得m=89,n=189.
具体的程序你就自己写一下吧,我就只给你这个算法了。
UID
145234
帖子
1
精华
0
积分
0
阅读权限
10
在线时间
0 小时
注册时间
2008-8-26
最后登录
2008-8-26
查看详细资料
TOP
HNED
新手上路
个人空间
发短消息
加为好友
3
#
大
中
小
发表于 2008-8-26 05:03
只看该作者
我今天前学了个方法 任一二叉树中度为0的结点总比度为为2的多一个 所以度为2的节点数为叶子节点(度为0的节点)减1 题中为89 所以总结点数为90+89+10为189 我也是新手 这段时间正在猛补这个 献丑了
UID
145235
帖子
1
精华
0
积分
0
阅读权限
10
在线时间
0 小时
注册时间
2008-8-26
最后登录
2008-8-26
查看详细资料
TOP
‹‹ 上一主题
|
下一主题 ››