黑马程序员技术交流社区

标题: 斐波那契数列 [打印本页]

作者: 从未有过的晴天    时间: 2014-6-20 21:00
标题: 斐波那契数列
/*
求斐波那契数列第n项,n<30,斐波那契数列前10项为 1,1,2,3,5,8,13,21,34,55
*/

class  text1
{
        public static void main(String[] args)
        {
                int[] num=new int[30];
                num[0]=1;
                num[1]=1;
                //根据第n项=第n—1项+第n—2项的和写循环
                for(int i=2;i<30;i++)
                {
                         num[i]= num[i-1]+num[i-2];         
                }
                System.out.println(num[25]);
        }
}



作者: 千曲生    时间: 2014-6-21 00:11
这个问题用递归调用更简单,快捷
  1. /*
  2. * 分析:
  3. *                         1)定义递归方法实现:
  4. *                                                                                                 a(n)=a(n-1)+a(n-2);
  5. *                         2)定义递归出口
  6. */
  7. public class 递归 {
  8.         public static void main(String[] args) {
  9.                 //调用递归方法
  10.                 int m=digui(29);
  11.                 System.out.println(m);
  12.         }
  13.         public static int digui( int n)
  14.         {
  15.                  if(n==1||n==2)
  16.                  {
  17.                          return 1;
  18.                  }
  19.                  else
  20.                  {
  21.                          return digui(n-1)+digui(n-2);
  22.                  }
  23.         }
  24. }
复制代码

作者: 从未有过的晴天    时间: 2014-6-21 00:12
还没学到




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2