| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3846 人关注过本帖
标题:求解 用遍历算法计算二叉树的叶子结点个数 高手请进 重谢
只看楼主 加入收藏
紫色的自由
Rank: 1
等 级:新手上路
帖 子:21
专家分:7
注 册:2011-6-8
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:3 
求解 用遍历算法计算二叉树的叶子结点个数 高手请进 重谢
好纠结啊
          很多东西没搞懂
                        求高手解释,谢谢了
搜索更多相关主题的帖子: 叶子 二叉树 
2011-06-28 23:48
loveshuang
Rank: 9Rank: 9Rank: 9
来 自:湖北武汉
等 级:蜘蛛侠
帖 子:270
专家分:1198
注 册:2010-11-14
收藏
得分:10 
     可以搞个变量初始化为0,引用传递进去,用遍历二叉树的方法遇到左右孩子都没有的就加1 ,遍历完就搞定啦!
      上面的实现应该比较简单。这个也可以试试:
    int Traverse(BiTree T)
    {
        if(T)
        {
            if(T->lchild==NULL&&T->rchild==NULL)
                return 1;
            return Traverse(T->lchild)+Traverse(T->rchild);
        }
        else
            return 0;
    }
2011-06-28 23:59
h_mastuade
Rank: 2
等 级:论坛游民
帖 子:21
专家分:86
注 册:2011-6-28
收藏
得分:10 
void CountLeaf(Bitree T)
{
    if(T){
        if(!T->lchild&&!T->rchild)count++;  //这里可以设一个全局变量,也可以给这函数加一个参数,自己改一点就可以了,蛮简单的
        CountLeaf(T->lchild);
        CountLeaf(T->rchild);
    }
}
2011-06-29 00:01
紫色的自由
Rank: 1
等 级:新手上路
帖 子:21
专家分:7
注 册:2011-6-8
收藏
得分:0 
谢谢
2011-06-29 07:42
快速回复:求解 用遍历算法计算二叉树的叶子结点个数 高手请进 重谢
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.043981 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved