剑指offer 09 斐波那契数列

来源:互联网 发布:怎么把图片上传淘宝 编辑:程序博客网 时间:2024/06/05 10:31

题目描述

大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项。

n<=39

思路:

只用递归的话会有重复计算,如上图。加入剪枝。

# -*- coding:utf-8 -*-class Solution:    def __init__(self):        self.num = []        self.num.append(0)        self.num.append(1)    def Fibonacci(self, n):        # write code here        if n <= len(self.num) - 1:            return self.num[n]        else:            tmp = self.Fibonacci(n - 1) + self.Fibonacci(n - 2)            self.num.append(tmp)            return tmp