`

兔子繁殖问题

阅读更多

某日到某公司笔试~遇到以下算法题目,顿时蒙了,冥思苦想不得其解,只怪当时数据结构与算法这门课没好好学,现在真是狼狈。

归来,上百度一搜,原来是一道Fibonacci 问题,真无奈,为什么学过Fibonacci却不知道兔子繁殖问题呢?真是可笑~~学习不彻底惹的祸,不过吃一堑长一智,现将问题及答案记录下来:

 

1,1,2,3,5,8,13,21。。。
称为裴波那契数列有许多神奇也叫兔子数列
神奇一、一般而言,兔子在出生两个月后,就有繁殖能力,一对兔子每个月能生出一对小兔子来。如果所有兔都不死,那么一年以后可以繁殖多少对兔子?
  我们不妨拿新出生的一对小兔子分析一下:
  第一个月小兔子没有繁殖能力,所以还是一对;
  两个月后,生下一对小兔民数共有两对;
  三个月以后,老兔子又生下一对,因为小兔子还没有繁殖能力,所以一共是三对;
  ------
  依次类推珂以列出下表:
  所经过月数:0123456789101112
  兔子对数:1 1 2 3 5 8 13 21 34 55 89 144 233
  表中数字1,1,2,3,5,8---构成了一个序列。这个数列有关十分明显的特点,那是:前面相邻两项之和,构成了后一项。
神奇二、有一楼梯共10级,一人每一步要跨一级也可跨二级,某人从第一级走到第十级共有几种不同的走法?

想一下这也可以用裴波那契数
程序大概是这样写的:
class Rabit 
{ 
public static int caclulate(int m) //通过递归来计算 
{ 
if (m <= 2) 
{ 
return 1; 
} else
return caclulate(m-1) + caclulate(m-2); 
} 

public static void main(String[] args) 
{ 
for(int i=1; i<=12; ++i) 
System.out.println("第" + i + "月:" + Rabit.caclulate(i)); 
} 
} 
 

分享到:
评论

相关推荐

    C语言-兔子繁殖问题多解

    【C语言-兔子繁殖问题多解】是关于计算斐波那契数列的一个经典编程问题。斐波那契数列是由意大利数学家斐波那契提出的,它在数学、计算机科学和其他领域都有广泛的应用。兔子繁殖问题即为斐波那契数列的一种表现形式...

    兔子繁殖问题.txt

    兔子繁殖问题

    兔子繁殖案例

    兔子繁殖问题,也被称为“兔子困境”或“莱昂纳多的兔子”,是斐波那契数列的一个经典实例。 在这个问题中,我们设想一对兔子在出生后的第一个月无法生育,但从第二个月开始可以生育。每对兔子每个月都会生出一对新...

    兔子繁殖问题python.md

    ### 兔子繁殖问题及其Python实现 #### 一、问题背景与定义 兔子繁殖问题源自一个经典的数学问题,它不仅在计算机科学领域有着广泛的应用,也是理解递归算法的一个很好的例子。该问题最早由意大利数学家斐波那契在...

    基础算法-python兔子繁殖问题

    兔子繁殖问题 def calculate_rabbit_pairs(months): if months == 1 or months == 2: return 1 else: rabbits = [1, 1] for i in range(2, months): rabbits.append(rabbits[i-1] + rabbits[i-2]) return ...

    Python求解兔子繁殖问题.docx

    Python求解兔子繁殖问题涉及到的是经典的斐波那契数列,这是一个在计算机科学和数学中常见的序列。斐波那契数列的定义是这样的:序列中的每个数字是前两个数字的和,通常以0和1作为起始数字,即F(0)=0,F(1)=1。对于...

    兔子繁殖问题.py

    兔子繁殖问题.py

    c 语言 兔子繁殖问题 逐行解释

    c 语言 兔子繁殖问题

    兔子的繁殖问题

    本题使用C思想进行斐波那契数列的输出,可帮助同学的作业提交问题。

    用C语言求解斐波那契数列的前n项并输出及兔子繁殖问题.docx

    这种递归关系在很多数学和编程问题中都有应用,包括模拟自然界的某些现象,如兔子繁殖问题。 在C语言中,求解斐波那契数列通常有几种方法,包括递归、动态规划、循环等。在这个例子中,我们使用了一个简单的循环...

    (新课标)2015年高考数学 题型全归纳 兔子繁殖问题与斐波那契

    斐波那契数列是数学领域的一个经典概念,源自13世纪意大利数学家斐波那契(Fibonacci)在其著作《算盘书》中提出的一个兔子繁殖问题。这个问题假设每对兔子在出生后第二个月就能繁殖一对新的兔子,且没有死亡和其他...

    c语言中兔子繁殖的问题

    在C语言中处理兔子繁殖问题通常涉及到著名的“斐波那契数列”(Fibonacci sequence),它描述了一对兔子从出生到达到生殖年龄开始繁殖,然后每一对兔子每个月都能生出新的一对兔子,新生的一对兔子在第一个月不会...

    兔子繁衍问题-C语言代码

    在兔子繁殖问题中,假设每对兔子在出生后一个月就能繁殖,且每次繁殖出一对新的兔子(假设没有死亡),那么兔子的数量将按照斐波那契数列增长。 在C语言中解决这个问题,我们需要编写一个程序,它能根据用户输入的...

    C语言解答经典的数学问题兔子繁衍问题即斐波那契数列问题

    在这个兔子繁殖问题中,斐波那契数列被用来模拟兔子的生育情况。每对兔子在出生后第三个月开始繁殖,且每对兔子每月产下一对新的兔子。由于每对兔子从第三个月开始才能繁殖,所以前两个月的兔子对数是固定的1对。接...

    兔子问题 兔子问题 经典

    题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月

    python 实现兔子生兔子示例

    # 问题:假设条件,兔子都不死的情况下,问每个月的兔子总数为多少? def rabbit(month): if month&lt;=2: return 2 else: return rabbit(month-1)+rabbit(month-2) if __name__==__main__: month=int(raw_...

    兔子繁衍问题c语言兔子繁衍问题c语言

    标题中的“兔子繁衍问题”是指著名的数学问题——斐波那契兔问题,也称为“兔子繁殖问题”。在这个问题中,假设一对兔子从出生后一个月就能繁殖,且每对兔子每个月能生出一对新的兔子(假设没有死亡)。问题是,经过...

    斐波拉契题目(生小兔子题目)

    斐波拉契题目(生小兔子题目) 一对兔子,一个月生一对兔子,兔子两个月后长大,又能生兔子

    兔子繁衍问题.c

    兔子繁衍问题.c

    001_兔子问题_趣味C++练习题_

    标题中的“001_兔子问题_趣味C++练习题”指的是一个经典的数学问题,通常称为“斐波那契兔群问题”或“兔子繁殖问题”。这个问题源自中世纪的欧洲,是一个关于兔子繁殖的理想化模型。在C++编程中,解决这类问题可以...

Global site tag (gtag.js) - Google Analytics