黑马程序员技术交流社区
标题:
斐波那契数列
[打印本页]
作者:
人在旅途~东营
时间:
2015-5-31 22:56
标题:
斐波那契数列
求斐波那契数列第n项,n<30,斐波那契数列前10项为 1,1,2,3,5,8,13,21,34,55
* 分析: n == 1, result 1
* n == 2, result 1
* n == 3, result 1+1 fun(n-1) + fun(n-2)
* n == 4, result 2+1 fun(n-1) + fun(n-2)
* 这种情况肯定要考虑递归
代码实现:
public class Test4 {
public static void main(String[] args) {
// 定义递归方法并用int类型的result接收,因为n<30,以n=15为例.
int result = fun(15);
System.out.println(result);
}
private static int fun(int n) {
// 判断,当n=1或者n=2时,返回结果为1
if (n == 1 || n == 2) {
return 1;
} else {
// 当n>2时,result = fun(n-1) + fun(n-2);返回结果
return fun(n - 1) + fun(n - 2);
}
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2