题目:斐波那契数列。(解法二)
2017-08-05 14:06
302 查看
程序分析:斐波那契数列(Fibonaccisequence),又称黄金分割数列,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、……。数学上的解法是:
F0 = 0 (n=0) F1 = 1 (n=1) Fn = F[n-1]+ F[n-2](n=>2)我是小白,大神无笑话小弟,只是想记录下来自己的思路,根据我自己的理解尝试一下:
def fib(n): F(0)=0 F(1)=1 if n>2: for i in range(n): F(i+2)=F(i+1)+F(i) print(F(i+2)) # 输出了第10个斐波那契数列 fib(10)运行提示错误:SyntaxError: can't assign to function call接着我参考了大神们的解法,发现函数可以在内部调用其它的函数;调用自身的函数称为递归函数:
def fib(n): if n == 1 or n == 2: return 1 return fib(n - 1) + fib(n - 2) # 输出了第10个斐波那契数列 print(fib(10))
结果输出:55
正确。
相关文章推荐
- 斐波那契数列的三种解法
- 题目:斐波那契数列
- 斐波那契数列解法
- 斐波那契数列面试题解法(java)
- 斐波那契数列的矩阵解法(java实现)
- 斐波那契数列的有趣解法
- 斐波那契数列解法,矩阵解法,学习
- 斐波那契数列的几种计算机解法
- 九度OJ 题目4:斐波那契数列
- 题目1387:斐波那契数列
- 循环与递归及Fibonacci(斐波那契)数列解法
- 斐波那契数列的几种计算机解法
- 斐波那契数列的递归和非递归解法
- 题目1387:斐波那契数列
- C语言求Fibonacci斐波那契数列通项问题的解法总结
- 题目1387:斐波那契数列
- 斐波那契数列的低效与高效解法
- 九度OJ题目1075:斐波那契数列
- 题目1075:斐波那契数列
- 斐波那契数列的快速解法