最近学习数据结构的时候,接触到了用递归实现斐波那契数列,在这里我就做个记录吧!

首先我们要知道什么是斐波那契数列。 斐波那契数列就是 0, 1, 1  ,2  ,3  ,5  ,8 , 13 这样的数列(这样的数列有什么规律,我相信大家一眼就能看出来)

这里介绍2种方法。

1.非递归

  1. //非递归方法实现
  2. public static int feibounaqi(int i) {
  3. if (i==1) {
  4. return 0;
  5. }
  6. if (i==2) {
  7. return 1;
  8. }
  9. int f1=0; //第一数
  10. int f2=1; //第二数
  11. int c=0; //返回结果数
  12. //这个循环只要i>=3就会执行
  13. for (int j =3;j<=i; j++) {
  14. c=f1+f2;
  15. f1=f2;
  16. f2=c;
  17. }
  18. return c;
  19. }

2.用递归实现

  1. public static int feibounaqi(int i) {
  2. if (i==1 || i==2) { //因为1和2 都是1 所以返回1
  3. return 1;
  4. }else {
  5. return feibounaqi(i-2)+feibounaqi(i-1); //否则用递归求值
  6. }
  7. }

最后结束我想送给自己一句话: 好运即在前方,坚持再坚持!

 

版权声明:本文为268lwc原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/268lwc/p/11195418.html