java实现斐波拉契数列
2015-11-04 12:42
417 查看
package algorithm.cxg.Fibonacci; import java.util.Scanner; /** * 实现斐波拉切函数 * 斐波拉切数列: * 由0和1开始,之后的费波那西系数就由之前的两数相加, * 数列形式如下:0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946,……………… * 在数学上,是以递归的方法来定义: * F_0=0 * F_1=1 * F_n = F_{n-1}+ F_{n-2} * 实现需求:输入序号n返回得到对应费波那西数 * @author admin * */ public class Fibonacci { public static void main(String[] args) { /*//定义数列的前两项 int a=0,b=1; //定义第n项 Scanner scan = new Scanner(System.in); System.out.println("请输入斐波拉切数列的30项以内第n项:"); int n = scan.nextInt(); //输出 System.out.println("斐波那契数列30项以内的第n项的和为:"); System.out.print(a+"\n"+b+"\n"); //根据数列得出的函数循环计算 for (int i = 0; i <= 30 ; i++) { n=a+b; a=b; b=n; System.out.println(n+"\t"); }*/ System.out.println("斐波那契数列30项以内的第n项的和为:"); for (int j = 1; j <= 20; j++) { System.out.print(getFibonacco(j) + "\t"); } } //递归函数实现数列 public static int getFibonacco(int i) { if (i==1) { return 0; } else if (i==1 || i==2) { return 1; } else { return getFibonacco(i-1)+getFibonacco(i-2); } } }
相关文章推荐
- 【Exception】java.lang.NoSuchMethodError: javax.persistence.Table.indexes()[Ljavax/persistence/Index;
- Spring整合JMS
- java中关于文本文件的读写方法实例总结
- javaWeb--API 自动化测试框架分享
- Java Main如何被执行?(转)
- eclipse不能写入classpath
- 给Java开发者的Scala教程
- 给Java开发者的Scala教程
- Struts--checkboxlist
- Struts2中文下载乱码问题
- Strut2验证框架问题
- 关于Struts2框架下使用servlet的配置
- Gradle 笔记——Java构建入门
- Java中带包的类的编译与执行
- 【Java并发编程实战】—–“J.U.C”:CyclicBarrier
- java 导出excel到客户端(本地)例子 用poi和servlet实现的
- Spring MVC RedirectAttributes的用法解决办法
- 基于JDK动态代理和CGLIB动态代理的实现Spring注解管理事务(@Trasactional)到底有什么区别
- JList动态添加元素
- java反射