同一个空间可以做两个网站么,网站建设注意的问题,营销网站建设公司,丹东网站建用来练手的python 练习题其六#xff0c;原链接 : python练习实例6
题干 : 斐波那契数列
斐波那契数列可以说是很好的递归理解工具了#xff0c;这里就用递归实现一下斐波那契数列。 源代码如下:
# 返回fibonacci数列中某一项的数值
def Fibonacci(n):if n 1:return 1eli…用来练手的python 练习题其六原链接 : python练习实例6
题干 : 斐波那契数列
斐波那契数列可以说是很好的递归理解工具了这里就用递归实现一下斐波那契数列。 源代码如下:
# 返回fibonacci数列中某一项的数值
def Fibonacci(n):if n 1:return 1elif n 2:return 1else:return (Fibonacci(n-1) Fibonacci(n-2))
# 输出斐波那契数列的第十项
print(Fibonacci(10))输出 :
上述函数是返回斐波那契数列某一项的数值。使用递归的一个核心思想就是在函数中自调用且每次自调用总是生成一个子问题。总的来说递归的写法有很大程度上依赖数列的递推规律。对于斐波那契数列来说总满足a11,a21,anan−1an−2forn2a_1 1, a_2 1, a_{n} a_{n-1} a_{n-2} \space\space for\space n 2a11,a21,anan−1an−2 for n2。利用递推规律我们不难将当前项与之前的项联系起来并在一步一步迭代中直至之前的项为初始值a1,a2a_1, a_2a1,a2。 有了上述函数要输出斐波那契数列的前N项也很简单了代码如下 :
import numpy as np
def Fibonacci_sequence(n):result np.zeros(n)for i in range(n):result[i] Fibonacci(i1)return resultprint(Fibonacci_sequence(10))输出结果 :