斐波那契数列

方法1:简单函数实现

def fibonacci_01(n):
    a, b, i = 0, 1, 1
    while i <= n:
        a, b = b, a+b
        print(a, end=' ')
        i += 1

方法2:通过递归函数

def fibonacci_03(n):
    if n<=2:
        return 1
    return fibonacci_03(n-2)+fibonacci_03(n-1)

方法3:通过迭代器

class Fibonacci:
    def __init__(self):
        self.a = 0
        self.b = 1
    def __iter__(self):
        return self

    def __next__(self):
        self.a, self.b = self.b, self.a+self.b
        return self.a
f1=Fibonacci()
for f in f1:
    if f<1000:
        print(f)
    else:
        break

方法4:通过生成器

def fibonacci_02(n):
    a, b, i = 0, 1, 1
    while i <= n:
        a, b = b, a+b
        yield a
        i += 1

其他:
跳台阶:一只青蛙,一次可以跳上1阶,也可以跳上2阶,问跳上n阶有多少种跳法。
兔子数量:刚开始有1只兔子,第三个月的时候兔子会繁殖一个小兔子,假如兔子不死,第N个月有多少只兔子

其实也是斐波那契的实现

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容