首页 > 软件开发 > c语言 > 正文
6.4.2 递归算法的简单应用
2015-11-23 13:34:54     我来说两句      
收藏    我要投稿

对许多人而言,理解递归的最好方法是从简单的数学函数开始。因为数学函数中递归结构直接能从问题的陈述中得到,并且可以很容易的看到。这些数学函数中,最常见的就是阶乘函数——在数学中的传统表示方式为n!——它被定义为1到n之间的所有整数的连乘积。范例1就是阶乘的递归算法处理。

范例1. n!(n>=1为整数),可编程如下:

Int face(int n)
{
  If(n==0)
  {
    return 1;
  }
else
  {
    return (n*face(n-1);
}
}

范例2 楼梯有n阶台阶,上楼可以一步上1阶,也可以一步上2阶,编一程序计算共有多少种不同的走法。

设n阶台阶的走法数为f(n),显然有
  n=1
  f(n)={
  f(n-1)+f(n-2) n>2
  可编程序如下:
  Int  f(int x);
  {
      if (x==1 )
{
 f=1
}
Else
{
         if (x==2)
{
f=2;
}
else
{
f=f(x-1)+f(x-2);
}
      }
}

 

点击复制链接 与好友分享!回本站首页
您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力  
上一篇:6.4.1 认识递归算法
下一篇:6.5.1 阐述题
相关文章
图文推荐
排行
热门
文章
下载
读书

关于我们 | 联系我们 | 服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑--致力于做实用的IT技术学习网站

世界杯外围投注官网