| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 512 人关注过本帖
标题:给大家分享一下我的一个递归设计!!!
只看楼主 加入收藏
zanzan1986
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:100
专家分:140
注 册:2011-2-22
结帖率:66.67%
收藏
已结贴  问题点数:20 回复次数:2 
给大家分享一下我的一个递归设计!!!
这是一个求二叉树表达式值的一个函数!!!!!!!
int Number(pBinaryTree root)             //运算函数
{          //root 根节点
    if(IsChar(*root->ch)&&root->L&&root->R)役            //IsChar()这个函数是判断是否为运算符
    {
        switch(*root->ch)
        {
              case '+': return Number(root->L) + Number(root->R);
              case '-': return Number(root->L) - Number(root->R);
              case '*': return Number(root->L) * Number(root->R);
              case '/': return Number(root->L) / Number(root->R);
        }

    }
    return Numbers(root->ch,strlen(root->ch));        //这个函数是将字符串转为整数的一个函数
}
搜索更多相关主题的帖子: 表达式 二叉树 
2011-02-22 16:53
中学者
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:20
帖 子:3554
专家分:80
注 册:2007-9-14
收藏
得分:20 
为嘛不判断root为空或为哑元的情况??

樱花大战,  有爱.
2011-02-22 17:54
zanzan1986
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:100
专家分:140
注 册:2011-2-22
收藏
得分:0 
回复 2楼 中学者
是哦!!!!!!!!!!!那就加一个if(root)就行了
2011-02-22 17:58
快速回复:给大家分享一下我的一个递归设计!!!
数据加载中...
 
   



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

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