递归之斐波那契数列java的三种写法
来源:互联网 发布:大数据时代面临的问题 编辑:程序博客网 时间:2024/05/07 14:46
第一种普通写法
public class Demo { public static void main(String[] args) { int num1 = 1; int num2 = 1; int num3 = 0; System.out.println(num1); System.out.println(num2); for (int i = 1; i < 10; i++) { num3 = num1 + num2; num1 = num2; num2 = num3; System.out.println(num3); } } }
第二种数组形式递归的写法
public class DIGUI1 { public static void main(String[] args) { int []arr=new int[20]; arr[1]=1; arr[2]=1; System.out.print(" "+arr[1]); System.out.print(" "+arr[2]); for(int i=3;i<20;i++){ arr[i]=arr[i-1]+arr[i-2]; System.out.print(" "+arr[i]); } } }
第三种 递归形式的写法
public class Demo { public static int f(int n) throws Exception { if(n==0){ throw new Exception("参数错误!"); } if (n == 1 || n == 2) { return 1; } else { return f(n-1)+f(n-2);//自己调用自己 } } public static void main(String[] args) throws Exception { for (int i = 1; i <=10; i++) { System.out.print(f(i)+" "); } } }
用递归最大的问题就是效率问题了,但是有的程序必须用递归写才可以写出来。例如著名的汉若塔问题,如果有谁可以用其他方式写出来我服。
2 0
- 递归之斐波那契数列java的三种写法
- Java学习之旅--斐波那契数列的递归和非递归实现
- java实现斐波那契数列两种写法
- 递归之斐波那契数列
- 递归之斐波那契数列
- 递归之斐波那契数列
- JAVA-递归-斐波那契数列
- 斐波那契数列的非递归实现 JAVA
- 斐波那契数列-java编程:三种方法实现斐波那契数列
- 斐波那契数列-java编程:三种方法实现斐波那契数列
- python使用递归、尾递归、循环三种方式实现斐波那契数列
- 斐波那契数列的递归及非递归
- 【递归】 之 菲波那契数列
- 递归三部曲之深入理解斐波那契数列
- 递归练习之斐波那契数列
- 斐波那契数列之递归、循环
- 浅入快出--递归之斐波那契数列(一)
- 递归调用之斐波那契数列
- listview加载性能优化ViewHolder
- MySQL 使用group by和case when 的两个例子
- 开通博客,写一篇
- queue队列的建立及使用,约瑟夫问题C/C++的解决
- Java编程实现数组排序——(三)选择排序
- 递归之斐波那契数列java的三种写法
- git push问题
- [leetcode]172. Factorial Trailing Zeroes
- 西游人生
- hdu - 4324 Triangle LOVE【dfs】
- Python科学计算的瑞士军刀——Anaconda 安装与配置
- spring boot 笔记
- 数据库三大范式详解(通俗易懂)
- css3的选择器