前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java_斐波那契数列_兔子生兔子算法

Java_斐波那契数列_兔子生兔子算法

作者头像
红目香薰
发布2022-11-29 17:29:49
3250
发布2022-11-29 17:29:49
举报
文章被收录于专栏:CSDNToQQCode

斐波那契数列指的是这样一个数列 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368…… 特别指出:第0项是0,第1项是第一个1。 这个数列从第三项开始,每一项都等于前两项之和。 请

方法一、基础循环写法 

代码语言:javascript
复制
package test;
/**
 * 
 * @author laoshifu
 * 2021年12月8日
 */
public class Action {
	public static void main(String[] args) {
		int zero=0;
		int one=1;
		int two=1;
		//注:从1月份开始有数值,故而从1开始
		for (int i = 1; i < 10; i++) {
			two=zero+one;
			zero=one;
			one=two;
		}
		System.out.println(two);
	}
}

方法二、递归写法

代码语言:javascript
复制
package test;
/**
 * 
 * @author laoshifu
 * 2021年12月8日
 */
public class Action {
	public static void main(String[] args) {
		System.out.println(dfs(10));
	}
	public static int dfs(int i){
		if(i==0){
			return 0;
		}
		if(i==1||i==2){
			return 1;
		}
		return dfs(i-1)+dfs(i-2);
	}
}

结果是一样的。

效率对比:测试数据【45】

循环消耗时间:

递归消耗时间:

 很明显,这类操作不适合用递归操作。

希望能大家所帮助。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-12-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 方法一、基础循环写法 
  • 方法二、递归写法
  • 效率对比:测试数据【45】
    • 循环消耗时间:
      • 递归消耗时间:
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档