当前位置: 首页 > news >正文

中国最大的门户网站是推广代理公司

中国最大的门户网站是,推广代理公司,网站建设视频教程百度云,深圳广告设计策划公司1.递归的概念 递归是学习C语⾔函数绕不开的⼀个话题,那什么是递归呢? 递归其实是⼀种解决问题的⽅法,在C语⾔中,递归就是函数⾃⼰调⽤⾃⼰。 递归的思想: 把⼀个⼤型复杂问题层层转化为⼀个与原问题相似,但…

1.递归的概念

  递归是学习C语⾔函数绕不开的⼀个话题,那什么是递归呢? 递归其实是⼀种解决问题的⽅法,在C语⾔中,递归就是函数⾃⼰调⽤⾃⼰。

  递归的思想:
  把⼀个⼤型复杂问题层层转化为⼀个与原问题相似,但规模较⼩的⼦问题来求解;直到⼦问题不能再被拆分,递归就结束了。所以递归的思考⽅式就是把⼤事化⼩的过程。 递归中的递就是递推的意思,归就是回归的意思。
  优点是它可以把代码变得更加清晰,具有可读性。
 
  但它也有自己的缺点,我们接下来先谈一下递归的两个限制条件,再来从此引出对递归缺点的讨论。

2.递归的限制条件

  我们先来看一个最简单的递归函数:

#include <stdio.h>
int main()
{printf("hehe\n");main();//main函数中⼜调⽤了main函数return 0; }

  当我们尝试运行的时候,可以发现函数陷入了死循环,出现了栈溢出的报错,即会提示出stack overflow的报警。

  实际上我们在使用函数的时候,都会在栈空间分配一块内存,而如果这个函数没有进行完,那么这块空间就不会得到释放,而这个函数又永远不会跳出递归,所以便不断地在内存占据空间,这种死递归没有限制,会无限循环下去,而栈内存的空间是有限的,最终便出现栈溢出的报警。

  我们现在可以尝试去总结函数递归所应该满足的条件:

递归存在限制条件,当满⾜这个限制条件的时候,递归便不再继续。
每次递归调⽤之后越来越接近这个限制条件。
  上述的函数便是在没有限制中不断死循环,才出现了上述的情况。接下来让我们在实例中体会这两个条件的必要之处吧。

3.实例:利用递归方法求n的阶乘

  计算n的阶乘(不考虑溢出),n的阶乘就是1~n的数字累积相乘。

  我们知道n的阶乘的公式: n=  n ∗ (n − 1)!

  这样的思路就是把⼀个较⼤的问题,转换为⼀个与原问题相似,但规模较⼩的问题来求解的。
  n!---> n*(n-1)!
  (n-1)! ---> (n-1)*(n-2)!
  ....
  直到n是1或者0时,不再拆解。
  再稍微分析⼀下,当 n<=1 的时候,n的阶乘是1,其余n的阶乘都是可以通过上述公式计算。

  那我们就可以写出函数Fact求n的阶乘,假设Fact(n)就是求n的阶乘,那么Fact(n-1)就是求n-1的阶乘,函数如下:

int Fact(int n)
{if(n<=0)return 1;elsereturn n*Fact(n-1);
}
#include <stdio.h>
int Fact(int n)
{if(n<=0)return 1;elsereturn n*Fact(n-1);
}
int main()
{int n = 0;scanf("%d", &n);
int ret = Fact(n);
printf("%d\n", ret);return 0;}

  在这个函数当中,函数在递归的时候不断靠近n=0这一个限制条件,这也完美满足了函数递归的条件。希望大家都能有所收获,喜欢我的话可以点点赞,加个关注,评论一下,谢啦,爱你们。

http://www.zhongyajixie.com/news/50798.html

相关文章:

  • 乐清人才网官方网站自己做一个网站需要多少钱
  • 只有做推广才能搜索到网站吗太原seo网站管理
  • 鲜花网站建设解决方案关键词排名优化品牌
  • 用ps怎么做网站首页百度seo怎么查排名
  • 做网站现成的测试账号西安网站seo技术厂家
  • 筋郑州做网站郑州网站建设制作公司
  • 网站被降权重新做网站温州seo品牌优化软件
  • 公司网站与营销网站搜狗网站收录
  • logo在线设计免费生成器seo外包是什么
  • 网站备案平台查询系统近日发生的重大新闻
  • 网站建设与维护测试4wordpress建站公司
  • 男人和女人做不可描述的事情的网站张家口网站seo
  • 哈尔滨网站建设丿薇免费seo软件推荐
  • php做学校网站免费下载免费发布广告的网站
  • 怎么搭建自己的博客网站googleseo优化
  • 荔枝视频在线观看免费最新福建seo排名
  • 做招投标网站淘宝推广引流方法有哪些
  • 什么是网络营销竞争的利器之一seo分析案例
  • 网站服务器购买推广代理平台登录
  • 电力公司在哪个网站做推广最好百度小说排行榜
  • 企业怎么做网站建设快点tv下载安装
  • 中企动力做网站怎么样做网站建网站公司
  • 网站建设谁家好磁力宝最佳搜索引擎入口
  • 梧州论坛百度有专做优化的没
  • 网站上怎么做支付接口手机端关键词排名优化
  • 建一个视频网站要多少钱seo基础优化包括哪些内容
  • 山东省建设监理协会官方网站seo算法是什么
  • 电商网站建设思路广告外链购买交易平台
  • 网站建设的策划方案百度网络营销中心
  • 如何做招商性网站黑河seo