斐波那契数列的两种实现形式

来源:互联网 发布:开源网络监控工具 编辑:程序博客网 时间:2024/05/16 12:14

递归实现形式

public class TestRecursion {public static void main(String[] args) {System.out.println(F(6));}static long F(int n){if(n==1||n==2) return 1;elsereturn F(n-1)+F(n-2);}}



非递归实现形式

public class TestFab {public static void main(String[] args) {System.out.println(f(6));}static long f(int n){if(n==1||n==2) return 1;long f1=1L;long f2=1L;long f=0;for(int i=3;i<=n;i++){f=f1+f2;f1=f2;f2=f;}return f;}}

非递归实现中,应该注意在循环的过程中找到一个相似的过程,通过数据的交换实现。

原创粉丝点击