python 案例006 (斐波那契数列)

本文探讨了斐波那契数列的两种不同实现方式:递归方法和迭代方法。通过具体代码展示了每种方法如何计算斐波那契数列,并对比了它们在效率上的差异。



#! /usr/bin/python
# -*- coding:utf-8 -*-

"""
an interesting topic Fibonacci sequence
"""

#the method we know how to solve this issue  ----recursion

def fib(n):
    if n ==1 or n ==2 :
        return 1
    else:
        return fib(n-1)+ fib(n-2)
n = 10
print "Fibonacci sequence value of %d is : " % n,fib(n)

# 有点意思

def fibv2(n):
    a,b =1,1
    for i in range(n-1):  # if n = 10 then 10 -1 = 9 range(9) ,recursion 9 times
        a,b= b,a+b         # ???
        print 'a=',a,'b=',b
    return a
print fibv2(10)
"""
Fibonacci sequence value of 10 :  55
a= 1 b= 2
a= 2 b= 3
a= 3 b= 5
a= 5 b= 8
a= 8 b= 13
a= 13 b= 21
a= 21 b= 34
a= 34 b= 55
a= 55 b= 89
55
"""




评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值