Java递归算法经典实例(经典兔子问题)

 更新时间:2016年12月16日 10:18:00   作者:comeing  
本文主要对经典的兔子案例分析,来进一步更好的理解和学习java递归算法,具有很好的参考价值,需要的朋友一起来看下吧

题目:古典问题:3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?

分析:首先我们要明白题目的意思指的是每个月的兔子总对数;假设将兔子分为小中大三种,兔子从出生后三个月后每个月就会生出一对兔子,

那么我们假定第一个月的兔子为小兔子,第二个月为中兔子,第三个月之后就为大兔子,那么第一个月分别有1、0、0,第二个月分别为0、1、0,

第三个月分别为1、0、1,第四个月分别为,1、1、1,第五个月分别为2、1、2,第六个月分别为3、2、3,第七个月分别为5、3、5……

兔子总数分别为:1、1、2、3、5、8、13……

于是得出了一个规律,从第三个月起,后面的兔子总数都等于前面两个月的兔子总数之和,即为斐波那契数列。

Java代码:

很经典的一个递归算法的例子。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持脚本之家!

相关文章

  • MyBatis框架之mybatis逆向工程自动生成代码

    MyBatis框架之mybatis逆向工程自动生成代码

    Mybatis属于半自动ORM,在使用这个框架中,工作量最大的就是书写Mapping的映射文件,由于手动书写很容易出错,我们可以利用Mybatis-Generator来帮我们自动生成文件。本文主要给大家介绍mybatis逆向工程自动生成代码,感兴趣的朋友一起学习吧
    2016-04-04
  • Java获取泛型实际类型的方法详解

    Java获取泛型实际类型的方法详解

    这篇文章主要介绍了Java获取泛型实际类型的方法详解,泛型,即“参数化类型”,一提到参数,最熟悉的就是定义方法时有形参列表,普通方法的形参列表中,每个形参的数据类型是确定的,而变量是一个参数,需要的朋友可以参考下
    2023-11-11
  • 使用Mybatis的PageHelper分页工具的教程详解

    使用Mybatis的PageHelper分页工具的教程详解

    这篇文章主要介绍了使用Mybatis的PageHelper分页工具的教程,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • JAVA类变量及类方法代码实例详解

    JAVA类变量及类方法代码实例详解

    这篇文章主要介绍了JAVA类变量及类方法代码实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-02-02
  • Java通俗易懂系列设计模式之策略模式

    Java通俗易懂系列设计模式之策略模式

    这篇文章主要介绍了Java通俗易懂系列设计模式之策略模式,对设计模式感兴趣的同学,一定要看一下
    2021-04-04
  • Spring中如何操作JDBC的实现

    Spring中如何操作JDBC的实现

    这篇文章主要介绍了Spring中如何操作JDBC的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-10-10
  • jtds1.1连接sqlserver2000测试示例

    jtds1.1连接sqlserver2000测试示例

    这篇文章主要介绍了jtds1.1连接sqlserver2000测试示例,需要的朋友可以参考下
    2014-02-02
  • Spring学习JdbcTemplate数据库事务参数

    Spring学习JdbcTemplate数据库事务参数

    这篇文章主要为大家介绍了Spring学习JdbcTemplate数据库事务参数使用示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-05-05
  • Java8之lambda表达式基本语法

    Java8之lambda表达式基本语法

    本文通过示例大家给大家介绍了java8之lambda表达式的基本语法,感兴趣的的朋友一起看看吧
    2017-08-08
  • 基于Java的Spring框架来操作FreeMarker模板的示例

    基于Java的Spring框架来操作FreeMarker模板的示例

    这篇文章主要介绍了基于Java的Spring框架来操作FreeMarker模板的示例,讲到了用于进行web模板文件的插值操作等例子,需要的朋友可以参考下
    2016-03-03

最新评论