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

网站可信认证必须做网站建设需求说明

网站可信认证必须做,网站建设需求说明,引流客户的最快方法是什么,网站开发方向行业现状Java 递归计算斐波那契数列指定位置上的数字 一、原理二、代码实现三、运行结果 一、原理 斐波那契数列(Fibonacci sequence),又称黄金分割数列,因数学家莱昂纳多斐波那契(Leonardo Fibonacci)以兔子繁殖为…

Java 递归计算斐波那契数列指定位置上的数字

  • 一、原理
  • 二、代码实现
  • 三、运行结果

一、原理

斐波那契数列(Fibonacci sequence),又称黄金分割数列,因数学家莱昂纳多·斐波那契(Leonardo Fibonacci)以兔子繁殖为例子而引入,故又称“兔子数列”,其数值为:1、1、2、3、5、8、13、21、34……

在数学上,这一数列以如下递推的方法定义:F(0)=1,F(1)=1, F(n)=F(n - 1)+F(n - 2)(n ≥ 2,n ∈ N*)

二、代码实现

要计算第 n 个斐波那契数列的数字,我们可以使用以下递归函数:

public class MyClass {public static void main(String[] args){int n = 10;System.out.println("斐波那契数列第 " + n + " 个数为 " + Fibonacci(n));}//递归  n代表第几个数public static int Fibonacci(int n) {//前两个数为 1//第三个数及后面的数为前面两数之和//如果输入的 n 不合法将返回 -1if (n == 1 || n == 2) {return 1;} else if (n > 2) {return Fibonacci(n - 1) + Fibonacci(n - 2);} else {return -1;}}}

时间复杂度:

  • 最好情况下,当 n 等于 12 时,直接返回 1,时间复杂度为 O(1)
  • 最坏情况下,当 n 大于 2 时,需要递归调用 Fibonacci() 函数计算前两个数的和,时间复杂度为 O(2^n)。因为每次递归调用会产生两个子问题,每个子问题又会产生两个更小的子问题,以此类推,直到递归到 n 等于 12
  • 平均情况下,时间复杂度也是 O(2^n),因为每个数都需要通过递归调用计算得到。

空间复杂度:

  • 由于递归调用会在堆栈中保存每次调用的局部变量和返回地址,所以空间复杂度取决于递归的深度。在最坏情况下,递归深度为 n,所以空间复杂度为 O(n)

综上所述,该递归实现的斐波那契数列函数的时间复杂度为指数级的 O(2^n),空间复杂度为线性的 O(n)。由于指数级的时间复杂度,在计算较大的斐波那契数时,递归实现会变得非常慢。

三、运行结果

斐波那契数列第 10 个数为 55
http://www.yayakq.cn/news/892059/

相关文章:

  • 网站制作的公司360建筑网兼职
  • 企业网站推广价格企业首页介绍
  • 做塑胶原料用什么网站好青岛市网站建设
  • 微网站是官网的手机站中铁建设集团有限公司招标平台
  • 免费织梦导航网站模板下载地址优化师是干嘛的
  • 下载室内设计排版模板网站有哪些手机平面设计软件
  • 为企业做网站的公司网站affiliate怎么做
  • 如何用ps来做网站设计重庆百度seo
  • 网站备案价格怎么增加网站的流量
  • 网站首页翻转效果什么模块阿里云虚拟主机配置wordpress
  • 网站自助建站系统网页制作与网站建设技术详解
  • 江西住房和城乡建设厅网站首页简易软件开发工具
  • 网站建设教程搭建湖南岚鸿如何给网站增加图标
  • 河北网站建设与推广建设网站需要投入
  • 有用element做网站的深圳软件公司名录
  • 网站备案和域名备案的区别湖南网络大课堂
  • 网站没内容 可以备案么上海网站备案公司
  • 做中英文游戏门户网站关键词怎么弄顶尖的锦州网站建设
  • 山东省城乡住房和城乡建设厅网站用织梦做网站视频
  • 企业网站建站模板推广网站怎么做能增加咨询
  • 网站做非经营性广告需备案苏州园区教育网
  • 网站 不稳定做零食网站怎么样
  • 之路网站建设做爰xo的视频网站试看
  • 网站建设的合同书乐陵seo快速排名
  • 南山免费做网站公司排名月光博客 网站模板
  • 天津网站建设制作方案网站服务器搭建教程
  • 网站自适应宽度大悟网站开发
  • 那里有正规网站开发培训学校做网站能收回吗
  • 网站上线后做什么做网站那几步
  • 浙江省建设工程监理管理协会网站抖音代运营合作方案