斐波那契数列的三种求法
来源:互联网 发布:下载办公软件office 编辑:程序博客网 时间:2024/05/24 00:33
1、动态规划
2、递归
3、迭代
public class Main {public static void main(String[] args) {long a = System.currentTimeMillis();System.out.println(f(36, new int[37]));long b = System.currentTimeMillis();System.out.println("运行时间:" + (b - a));a = System.currentTimeMillis();System.out.println(f2(36));b = System.currentTimeMillis();System.out.println("运行时间:" + (b - a));a = System.currentTimeMillis();System.out.println(f3(36));b = System.currentTimeMillis();System.out.println("运行时间:" + (b - a));}// 迭代public static int f3(int n) {if (n == 1 || n == 2) {return 1;}int first = 1, second = 1;for (int i = 3; i <= n; i++) {int temp = second + first;first = second;second = temp;}return second;}// 递归public static int f2(int n) {if (n == 1 || n == 2) {return 1;}return f2(n - 1) + f2(n - 2);}// 动态规划public static int f(int n, int[] a) {if (n == 1 || n == 2) {return 1;}if (a[n] != 0) {return a[n];}return a[n] = f(n - 1, a) + f(n - 2, a);}}
0 0
- 斐波那契数列的三种求法
- 斐波那契数列的几种求法
- C语言-斐波那契(Fibonacci)数列三种不同求法时间复杂度分析
- 斐波那契数列的各种求法
- 斐波那契数列通项公式的求法
- 斐波那契(Fibonacci)数列的求法
- 斐波那契数列的各种求法
- 菲波那契数列的快速幂矩阵求法
- 斐波那契数列高效递归求法
- 斐波那契数列 矩阵求法 优化
- poj3070 Fibonacci 斐波那契数列的第n项的矩阵求法
- 斐波那契数列的各种求法(终于找全…
- 斐波那契数列的各种求法(终于找全了!)
- 斐波那契数列的矩阵分治求法java实现
- 斐波那契Fibonacci数列第n个数的快速求法
- 斐波那契数列的矩阵求法,效率O(lgn)
- 实现斐波那契数列的三种方法
- 斐波那契数列的三种算法
- 能不能简单描述一下你在java web开发中需要用到多线程编程的场景?
- 用vlc搭建简单流媒体服务器(UDP和TCP方式)
- 使用structs2开源框架+tomcat开源服务+mysql开源数据库+微信开放接口构建考务信息推送平台
- 98. Validate Binary Search Tree LeetCode
- 安装 Apache 出现 <OS 10013> 以一种访问权限不允许的方式做了一个访问套接字的尝试
- 斐波那契数列的三种求法
- 养护眼睛
- 文章标题
- Java线程(七):Callable和Future
- JS二级联动
- qt编译运行错误—无法启动此应用程序,因为计算机中丢失XXX.dll
- HDU-1264 Counting Squares(矩形面积并模板)
- 找工作-简历
- 如何在web页面中,实现耗时操作的后台执行?多线程吗?