黑马程序员技术交流社区

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

作者: panbingqi    时间: 2015-4-22 21:59
标题: 斐波那契数列
*
* 斐波那契数列
*
* 1 1 2 3 5 8 13....
*
*
* 需求: 求  第N项的 值
*
* 分析:
*                 n == 1, 值 1
*                 n == 2, 值 1
*                 n == 3, 值 func(n-1) + func(n-2)
*                 n == 4, 值 func(n-1) + func(n-2)
*
* 结论:
*                 递归的出口条件:
*                         n==1, n==2 , 结果为1
*                 递归循环规律:
*                         func(n) = func(n-1) + func(n-2)       
*                        
*/
public class DiguiTest2 {
        public static void main(String[] args) {
                //int n = 5;
                //int n = 7;
                int n = 20;
                int num = func(n);//n=5,7,20
                System.out.println(num);
        }

        public static int func(int n) {
                if (n == 1 || n == 2) {
                        return 1;
                } else {
                        return func(n-1)  + func(n-2);
                }
        }
}

作者: chenxin2015    时间: 2015-4-22 22:07
楼主不错了  受教了
作者: 莫里亚蒂    时间: 2015-4-22 22:39
之前看过斐波那契数列,不过还没有做过斐波那契数列的代码,看完楼主的代码很有帮助




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