python练习笔记——面试题 F(n) = F(n-1)+F(n-2)

已知:F(0) = 0, F(1) = 1, F(n) = F(n-1) + F(n-2) 其中(n≥2,n∈N*)函数

求:求10之内的函数值分别是多少spa

方法一:code

def F(n): if n <= 1: return 1
    else: return F(n-1) + F(n-2) for i in range(100): print(i,"-->",F(i))

 

方法二:blog

def F(n): x,a,b=0,0,1
    while x < n: a,b = b,a+b x += 1
    return b for i in range(100): print(i,"-->",F(i))

说明二者都是循环语句是能够替换递归逻辑的,且循环语句要比递归运行效率高!递归

相关文章
相关标签/搜索