`
xiaoming123123
  • 浏览: 101022 次
  • 性别: Icon_minigender_1
  • 来自: 南昌
社区版块
存档分类
最新评论

使用递归计算斐波那契数列

    博客分类:
  • J2SE
fab 
阅读更多
所谓递归(Recursion),就是方法调用自身。对于递归来说,一定有一个出口,让递归结束,只有这样才能保证不出现死循环

求阶乘有两种方式:
(1)      n!=n*(n-1)*(n-2)……*2*1
(2) n!=n*(n-1)!,因为n已经确定下来了,只需要知道(n-1)!就可以计算n!,而(n-1)!=(n-1)*(n-2)!,以此类推,所以最好使用这种递归的方式求阶乘


/*
 * 使用递归计算斐波那契数列(1,1,2,3,5,8,13,21,34)
 * 规律:某一个数等于,前两个数字之和
 */
package com.digui;

public class Fab {
	
	public int compute(int n) {
		
		//递归的出口
		if(1 == n || 2 == n) {
			return 1;
		}
		else {
			return compute(n - 1) + compute(n - 2);
		}
	}
	
	public static void main(String[] args) {
		
		Fab fab = new Fab();
		System.out.println(fab.compute(8));  //找出第8个所对应的数字
	}
}

分享到:
评论

相关推荐

    非递归实现fibonacci数列

    使用C++非递归实现fibonacci数列,对正在学习算法的同学应该挺有帮助的

    Labview实现递归:斐波那契数列

    斐波那契数列: 在数学上它以递归的方式进行定义,指这样的一个数列:0、1、1、2、3、5、8、13、21、34、55、89、144……,即前两个数为分别为0和1...本例为LabVIEW中编写递归VI实现求解斐波那契数列Fib(n)中第n项的值

    Q1069907.zip 汇编递归求斐波那契数列前N项 以及 TASM TurboC等工具

    以下是一个简单的汇编语言递归斐波那契数列的框架: ```assembly section .data n db 10 ; 计算斐波那契数列的前10项 section .text global _start _start: ; 初始化,这里假设递归函数名为fib mov ecx, [n] ...

    利用递归函数求解Fibonacci数列

    利用递归数列求解著名的Fibonacci数列的各项,用户可自定义输入要求的第n项,输入后即可求出从0到n每一项Fibonacci的值。

    递归方法实现斐波那契数列_递归方法实现斐波那契数列_python_源码

    在这个场景下,我们可以编写一个函数,它会根据斐波那契数列的定义来计算第n项的值。 Python中递归实现斐波那契数列的基本代码如下: ```python def fibonacci(n): if n print("输入错误,n应大于0") elif n =...

    Fibonacci数列(非递归的函数调用)

    斐波那契数列是一个经典的数学概念,在计算机科学...了解和实践非递归的斐波那契数列计算,对于提升C++编程技能和算法理解能力非常有帮助。在实际项目中,类似的方法也可以应用于其他需要高效计算序列或序列项的问题。

    递归算法算斐波那契数列

    5. **C语言实现递归斐波那契数列** #### 斐波那契数列定义 斐波那契数列(Fibonacci sequence)是这样一个数列:0, 1, 1, 2, 3, 5, 8, 13, 21, ...。该数列从第三项开始,每一项都等于前两项之和。数学上,斐波那契...

    编写函数f,功能是用递归的方法求斐波那契数列的第n项

    【问题描述】编写函数f,功能是用递归的方法求斐波那契数列的第n项,函数原型为 int f(int n),在主函数中输入一个正整数n,调用函数f求出斐波那契数列的第n项,并在主函数中输出。 斐波那契数列:1,1,2,3,5,8,13,...

    递归算法 斐波那契数列Demo案例!

    下面是一个简单的Python代码示例,展示了如何使用递归算法来计算斐波那契数列: ```python def fibonacci(n): if n return 0 elif n == 1: return 1 else: return fibonacci(n-1) + fibonacci(n-2) ``` 这...

    ### 递归求解 Fibonacci 数列 pta

    这段代码中的 `fibonacci()` 函数通过递归的方式计算 Fibonacci 数列中第 `n` 项的值。当 `n` 小于等于 1 时,函数直接返回 `n`,这对应于 Fibonacci 数列的定义。对于 `n > 1` 的情况,则通过递归调用 `fibonacci(n...

    matlab递归实现斐波那契数列_Fibonacci.zip

    matlab递归实现斐波那契数列_Fibonacci

    汇编语言,计算斐波那契数列的前22项,斐波那契数列,分别用两种方法:递归调用,普通循环加法

    在本文中,我们将深入探讨如何使用汇编语言来计算斐波那契数列的前22项,并且对比两种不同的实现方法:递归调用和普通循环加法。首先,让我们了解一下斐波那契数列的基本概念。 斐波那契数列是一个数学上的序列,...

    C语言递归实现斐波那契数列程序

    C语言编写的斐波那契数列程序 递归 C语言初学者必会

    android Handler子线程计算斐波那契数列

    以下是使用Handler实现子线程计算斐波那契数列的步骤: 1. **创建Handler实例**: 首先,在主线程中创建一个Handler实例。这个Handler会监听消息队列,当有新消息到来时,它会调用`handleMessage(Message msg)`...

    寒假26.递归day 斐波那契数列_递归_

    在这个斐波那契数列的例子中,我们可以利用递归函数来计算任意位置的斐波那契数。递归函数的基本结构通常包括一个或多个基本情况(base cases),以及一个或多个递归情况(recursive cases)。 在C++中,一个简单的...

    java用非递归的方法打印Fibonacci数列

    Java 中的 Fibonacci 数列是通过非递归的方法来实现的,该方法使用循环来计算 Fibonacci 数列的每个元素,而不使用递归函数。 Java 中的 Fibonacci 数列的定义是从 0 开始的,第一个 Fibonacci 数是 0,第二个是 1...

    递归斐波那契数列

    在C语言中,我们可以编写一个递归函数来计算斐波那契数列的第n项。以下是一个简单的递归实现: ```c #include int fibonacci(int n) { if (n ) { return n; } else { return fibonacci(n - 1) + fibonacci(n ...

    C语言数据结构递归之斐波那契数列

    C语言数据结构递归之斐波那契数列是指在C语言程序设计中使用递归函数来解决斐波那契数列问题的方法。斐波那契数列是一种经典的数学序列,第一个和第二个数字都是1,而后续的每个数字是其前两个数字之和,例如,数列...

    Java递归实现斐波那契数列

    在斐波那契数列的实现中,递归算法可以将问题分解成多个小问题,每个小问题都是计算斐波那契数列的前两个数字的和。例如,计算第n个斐波那契数字,可以将其分解成计算第n-1和第n-2个斐波那契数字的和。通过这种方式...

    java中斐波那契数列的简单实现方法.docx

    Java中斐波那契数列的简单实现方法 ...Java中斐波那契数列的简单实现方法可以使用数组来记录每个月的兔子对数,然后使用方法来计算每个月的兔子对数。这个方法非常方便和高效,可以用于解决各种实际问题。

Global site tag (gtag.js) - Google Analytics