java生成斐波那契数列
今天刷头条看到斐波那契数列,9年义务教育还是有点用:斐波那契数列就是不断将前两个数求和。这么多1是为了提倡自主思考的思想,点进来的先自己想想能不能自己通过java,或c或js写一段程序生成斐波那契数列,我自己想了老半天,
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
public static void main(String[] args) {
for (int i = 1; i < 24; i++) {
System.out.println(me(i));
}
}
public static int me(int a) {
if(a == 1) {
return 1;
}
if(a == 2) {
return 1;
}
return me(a-2) + me(a-1);
}
/* i=3 结果=me(1)+me(2)
* i=4 结果=me(2)+me(3)
* i=5 结果=me(3)+me(4)
* i=4 结果=me(4)+me(5)
* i=4 结果=me(5)+me(6)
* i=4 结果=me(6)+me(7)
*/
注释为分析过程,用到了递归,怎么样,眼前一亮吧,代码竟然这么简单,如果还不好理解的话 看看百科的解释
斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波那契数列以如下被以递推的方法定义:F(1)=1,F(2)=1, F(n)=F(n-1)+F(n-2)(n>=3,n∈N)* ps:n表示第n个斐波那契数
这有大神的文章
https://blog.csdn.net/Return_head/article/details/90668353