美文网首页python学习之路
Python实现斐波那契数列

Python实现斐波那契数列

作者: Alcazar | 来源:发表于2019-05-31 19:24 被阅读20次

使用多种方式实现 斐波那契数列
:1 1 2 3 5 8 13 1 34 55 89 144 233 377 610 987 ···

  • 方法一:约束输出最大值
    输出小于10000的斐波那契数列
def fb():
  a,b = 1,1
  while a < 10000:
      print(a,end=' ')
      a,b = b,a+b
fb()

内存分析:


内存分析

执行结果:

1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 

  • 方法二:用递归实现
def fb1(n):
    if n == 1 or n == 2:
        return 1
    return fb1(n-1) + fb1(n-2)
for i in range(1,20):
    print(fb1(i))

执行结果:

1
1
2
3
5
8
13
21
34
55
89
144
233
377
610
987
1597
2584
4181

  • 方法三:用循环实现
def fb_for(n):
    before = 0
    after = 1
    if n == 1:
        return 1
    for i in range(2,n+1):
        tmp = before + after
        before = after
        after = tmp
        # before,after = after,tmp
    return tmp
for i in range(1,20):
    print(fb_for(i))

内存分析:


内存分析

相关文章

网友评论

    本文标题:Python实现斐波那契数列

    本文链接:https://www.haomeiwen.com/subject/bbogtctx.html