斐波拉契数列进行编译,采用三种不同的方法实现,迭代,递归,数组
来源:互联网 发布:阿里云短信接口 编辑:程序博客网 时间:2024/05/17 08:30
数组的方式
package santiago;import java.util.Scanner;/** * 这里是利用数组的方式求斐波拉契数列 * @author santiago * */public class ArrFi {public static int i;private void fo(int m) {int [] a = new int[10];a[0] = 1;a[1] = 1;for (i = 2; i <= m; i++) {if(i==2||i==1){a[i] = 1;}else{a[i] = a[i-1]+a[i-2];}}System.out.println(a[i-1]);}public static void main(String[] args) {Scanner in = new Scanner(System.in);System.out.println("请输入你想求第几个月的兔子!");int num = in.nextInt();ArrFi b = new ArrFi();if(num>0){b.fo(num);}else{System.out.println("请输入大于0 的数");}}}
迭代的方式
package santiago;import java.util.Scanner;/** * 这里是按照迭代的方式求斐波拉契数列 * @author santiago * */public class NorFi {private void sum(int m) {int s = 1;int s1 = 1;int s2 = 0;if(m==0||m==1){s = 1;}else{for (int i = 2; i <= m+1; i++) {s = s1 + s2;s1=s2;s2=s;}}System.out.println(s);}public static void main(String[] args) {Scanner in = new Scanner(System.in);System.out.println("请输入你求第几个月的兔子!");int m = in.nextInt();NorFi a =new NorFi();a.sum(m);}}
递归的方式
package santiago;import java.util.Scanner;/** * 1 1 2 3 5 ……采用的是递归的方式 * @author santiago * */public class SumFi {private int f(int i) {if(i==1||i==2){return 1;}else{return f(i-1)+f(i-2);}}public static void main(String[] args) {SumFi a = new SumFi();System.out.println("你想求第几个月的兔子");Scanner in = new Scanner(System.in);int num = in.nextInt();if(num>0){System.out.println(a.f(num));}else{System.out.println("请输入大于0的整数");}}}
0 0
- 斐波拉契数列进行编译,采用三种不同的方法实现,迭代,递归,数组
- C语言实现斐波那契数列的两种方法(递归和迭代)
- 用递归,迭代,通项公式三种方法实现斐波那契数列求解
- C语言斐波那契数列的四种实现方式—递归,迭代,数组,队列
- 斐波那契数列的递归,迭代(循环),通项公式三种实现
- 斐波那契数列的递归,迭代(循环),通项公式三种实现
- 斐波那契数列的递归,迭代(循环),通项公式三种实现
- 斐波那契数列的递归、迭代(循环)、通项公式三种实现
- 斐波那契数列的递归,迭代(循环),通项公式三种实现
- 斐波那契数列的递归,迭代(循环),通项公式三种实现
- php实现斐波那契数列的三种方法,递归回调和迭代器和数组之间性能对比
- 斐波那契数列实现--递归,迭代,数组,队列
- 迭代与递归(及异同点的简单分析)以及Fibonacci数列的两种实现
- 二叉树的三种遍历方式的递归实现和迭代实现
- python实现费波纳茨数列——递归、迭代
- 斐波那契数列迭代和递归实现
- 斐波那契数列的递归和迭代实现之差异
- 剑指offer----斐波那契数列的实现--递归和迭代
- 不想让人知道我的博客。自己活在自己的世界
- hasLayOut
- 冰河的VLM文档链接
- HTML巩固练习之CSS基础
- C++ 学习基础篇(一)—— C++与C 的区别
- 斐波拉契数列进行编译,采用三种不同的方法实现,迭代,递归,数组
- 2016年湖南省第十二届大学生计算机程序设计竞赛:A—2016
- Python: 函数与方法的区别 以及 Bound Method 和 Unbound Method
- java.lang.IndexOutOfBoundsException: Inconsistency detected.
- 外观模式
- dumpsys原理
- C# 多线程随手记
- log4j:WARN No appenders could be found for logger (org.springframework.web.context.ContextLoader)
- AngularJS 设置元素样式