Fibonacci 0,1,1,2,3,5,8…… 数列的实现
2014-06-04 20:22
246 查看
Fibonacci 0,1,1,2,3,5,8…… 数列的实现
下面是对这个数列的两种算法实现,一种是递归实现,一种是多项式算法实现!在第一种情况下,当n值达到一定大小时,计算机的运行时间明显加大,对其的改进的第二种方法说是秒杀了第一种算法!
递归算法的时间复杂度是指数级别
多项式算法的时间复杂度是线性增长级别
下面是对这个数列的两种算法实现,一种是递归实现,一种是多项式算法实现!在第一种情况下,当n值达到一定大小时,计算机的运行时间明显加大,对其的改进的第二种方法说是秒杀了第一种算法!
递归算法的时间复杂度是指数级别
多项式算法的时间复杂度是线性增长级别
package review; public class Fibonacci { public static void main(String args[]){ int n=200; //多项式发 fib1(n); //递归法 for(int i=0;i<=n;i++) { System.out.println(fib(i)); } } //递归法(指数级复杂度) public static int fib(int n){ if(n==0) { return 0; }else if(n==1) { return 1; }else { return fib(n-1)+fib(n-2); } } //多项式发(线性复杂度) public static void fib1(int n){ if(n==0){ System.out.println(0); } int a[]=new int[n+1]; a[0]=0; a[1]=1; System.out.println(a[0]); System.out.println(a[1]); for(int i=2;i<=n;i++){ a[i]=a[i-1]+a[i-2]; System.out.println(a[i]); } } }
相关文章推荐
- Fibonacci(斐波那契)数列实现
- Fibonacci(斐波那契)数列的递归与非递归实现 python
- 求斐波那契(Fibonacci)数列通项的七种实现方法
- 求斐波那契(Fibonacci)数列通项的七种实现方法
- 求斐波那契(Fibonacci)数列通项的七种实现方法
- 斐波那契数列(fibonacci)两种python实现的效率对比
- 剑指offer-9-Python实现斐波那契(Fibonacci)数列
- 斐波那契(Fibonacci)数列的七种实现方法
- 栈的应用一--斐波那契(Fibonacci)数列的实现(代码)
- 求斐波那契(Fibonacci)数列通项的七种实现方法
- 多种方法实现Fibonacci(斐波那契)数列的生成
- Fibonacci斐波那契数列-实现2
- fibonacci 数列实现 log(n) and O(n)
- 斐波那契(Fibonacci)数列的递归和非递归实现
- python实现经典算法(2):Fibonacci(斐波那契)数列
- mips汇编语言实现Fibonacci(斐波那契)数列
- 七种方式求斐波那契(Fibonacci)数列通项
- Python巧妙实现Fibonacci序列算法
- 用一条SQL语句实现斐波那契数列
- 费波纳切(Fibonacci)数列的前N项和公式(PHP版)三种算法的比较