剑指offer-9-Python实现斐波那契(Fibonacci)数列
2017-09-06 21:57
441 查看
题目内容:
数列为:1,1,2,3,5,8…
解法一:递归方法
但递归方法会重复计算中间项,效率较低。
解法二:用数组存储
数列为:1,1,2,3,5,8…
解法一:递归方法
def JumpFloor(n): if(n==0):return 0 elif(n==1):return 1 elif(n==2):return 1 else: return JumpFloor(n-1)+JumpFloor(n-2) print JumpFloor(6) #output:8
但递归方法会重复计算中间项,效率较低。
解法二:用数组存储
def Fibonacci( n): li = [0,1] for i in range(2,n+1): li.append(li[i-1]+li[i-2]) return li print Fibonacci(6) #output:8
相关文章推荐
- 斐波那契数列[剑指offer]之python实现
- python实现经典算法(2):Fibonacci(斐波那契)数列
- 斐波那契数列(fibonacci)两种python实现的效率对比
- Fibonacci(斐波那契)数列的递归与非递归实现 python
- 剑指offer编程题Java实现——面试题9斐波那契数列
- mips汇编语言实现Fibonacci(斐波那契)数列
- 【剑指offer】面试题 10:斐波那契数列及其推广
- 链表中倒数第k个结点[剑指offer]之python实现
- 平衡二叉树[剑指offer]之python实现
- 反转链表[剑指offer]之python实现
- 树的子结构[剑指offer]之python实现
- 剑指offer-10-Python实现(二进制中1的个数)
- 斐波那契数列的递归和非递归实现 —— python
- 【剑指Offer面试题】 九度OJ1387:斐波那契数列
- Python剑指offer之两个栈实现一个队列-两个队列实现一个栈
- 剑指Offer-面试题22 栈的压入、弹出序列(python实现)
- 剑指offer中把数组排成最小数之归并排序实现(python 3.5.2)(附上归并和不开新数组的快排)
- 合并两个排序的链表[剑指offer]之python实现
- 二叉树的镜像[剑指offer]之python实现
- [转]二进制中1的个数[剑指offer]之python实现