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

贵阳做网站公司吗全网最低价24小时自助下单平台

贵阳做网站公司吗,全网最低价24小时自助下单平台,帝国cms添加网站地图,网站免费源码大全无需下载斐波那契数列定义: 斐波那契数列大家都非常熟悉。它的定义是: 对于给定的整数 x ,我们希望求出: f ( 1 ) f ( 2 ) … f ( x ) f(1)f(2)…f(x) f(1)f(2)…f(x) 的值。 有两种方法,分别是递推(迭代)与递归 具体解释如下图 备注…

斐波那契数列定义:

斐波那契数列大家都非常熟悉。它的定义是:

请添加图片描述

对于给定的整数 x ,我们希望求出: f ( 1 ) + f ( 2 ) + … + f ( x ) f(1)+f(2)+…+f(x) f(1)+f(2)++f(x) 的值。

有两种方法,分别是递推(迭代)与递归

具体解释如下图

请添加图片描述

备注:递推(迭代)的方式是利用开一个有 x 个元素的数组,表示由 x 种的状态,本质上是利用空间换时间,然后循环迭代每一个状态,其中一个新状态是由两个旧状态递推出来的,整个递推过程只需要 O ( n ) O(n) O(n) 的时间复杂度,所以此种方法运行的时间复杂度要低于递归的方法。

递归的方法更像是一种暴搜(暴力搜索每一种状态),所有搜索到的状态构成一颗递归搜索树,搜索的次数就是所有树上的节点的个数,可以看到递归搜索树的节点树远大于循环迭代次数,其时间复杂度大约为 O ( 2 n − 2 ) O(2^{n - 2}) O(2n2)

代码:

方法一:递推(迭代)

时间复杂度 O ( n ) O(n) O(n)

typedef long long ll;
const int N = 70;ll fib_dp(int x) //递推
{vector<ll> dp(N,0);dp[0] = 0,dp[1] = 1;for (int i = 2;i <= x;i ++ ) {dp[i] = dp[i - 1] + dp[i - 2];}return dp[x];
}

方法二:递归

时间复杂度 O ( 2 n − 2 ) O(2^{n - 2}) O(2n2)

typedef long long ll;
const int N = 70;ll fib_recursion(int x) //递归
{if (!x) return 0;else if (x == 1 || x == 2) return 1;else {return fib_recursion(x - 1) + fib_recursion(x - 2); //后序遍历的写法}
}
http://www.jinmujx.cn/news/119929.html

相关文章:

  • 学ui设计网站谷歌搜索引擎香港免费入口
  • 做网站是否要备案怎样建网站
  • 专业的东莞网站推广武汉seo网站排名优化公司
  • 哪个网站做淘宝客现在推广用什么平台
  • 成都营销网站制作2023能用的磁力搜索引擎
  • 临时网站怎么做网络推广需要多少钱
  • 做一网站要什么软件有哪些网站排名推广推荐
  • 刚做的网站搜全名查不到网游推广员
  • 苏州和城乡建设局网站如何做网络营销?
  • wordpress主题邮件模板下载企业网站设计优化公司
  • 网站开发流程博客windows系统优化软件排行榜
  • 关于网站建设的入门书互动营销经典案例
  • 同企网站建设做网站百中搜优化软件靠谱吗
  • ps怎么做网站app制作费用一览表
  • 广东省城乡与住房建设厅网站东莞网站推广运营公司
  • phpcms wap网站搭建百度论坛
  • 佛山做外贸网站推广企业做网上推广
  • 友汇网站建设一般多少钱湖南株洲疫情最新情况
  • 济南网站建设第六网建电商代运营公司排名
  • 宁波市建设工程监理协会网站百度手机端排名如何优化
  • 制作论坛做网站西安seo和网络推广
  • 大兴做网站的公司百度云搜索引擎入口官网
  • 网站是如何盈利软文500字范文
  • wordpress调用网站标题在线seo推广软件
  • 中央两学一做专题网站长沙互联网网站建设
  • 企业网站的可信度建设包括ip域名解析查询
  • 免费网站建站模块百度快速收录
  • 如何做学校网站互联网登录的网站名
  • WordPress站内跳转设置灰色词排名上首页
  • 如何上传自己做的网站白云百度seo公司