剑指Offer之 - 斐波那契数列
来源:互联网 发布:什么是淘宝店铺运营 编辑:程序博客网 时间:2024/05/16 10:02
题目:
应用:
青蛙跳台阶,爬楼梯,小矩形覆盖大矩形……
思路:
1、 递归
2、 迭代代码:
#include <iostream>using namespace std;//斐波那契数列//应用:青蛙跳台阶,爬楼梯,小矩形覆盖大矩形long long fibonacciRecurisely(int n){if(n == 0 || n == 1)return n;return fibonacciRecurisely(n-1) + fibonacciRecurisely(n-2);}//何海涛做法long long Fibonacci(unsigned n){int result[2] = {0,1};if(n < 2)return result[n];long long fibNMinusOne = 0;long long fibNMinusTwo = 1;long long fibN = 0;for(unsigned int i = 2 ; i <= n ; i++){fibN = fibNMinusOne + fibNMinusTwo;fibNMinusOne = fibNMinusTwo;fibNMinusTwo = fibN;}return fibN;}long long fibonacciInteratively(int n){long long pre = 0;long long result = 1;if(n <= 1)return n;long long tmp = result;for(int i = 2 ; i <= n ; i++){tmp = result;result += pre;pre = tmp;}return result;}//矩阵方法,不会int main(){int x ;while(cin>>x){cout<<fibonacciRecurisely(x)<<endl;//当数据很大时,递归速度明显变慢很多cout<<fibonacciInteratively(x)<<endl;cout<<Fibonacci(x)<<endl;}}
0 0
- 剑指Offer之斐波那契数列
- 剑指offer之斐波那契数列(Fibonacci)
- 剑指Offer之 - 斐波那契数列
- 剑指offer系列之七:斐波那契数列
- 剑指offer系列之7:斐波那契数列
- 剑指offer(八)之斐波那契数列
- 斐波那契数列[剑指offer]之python实现
- 剑指Offer之斐波那契数列问题
- 剑指offer之斐波那契数列
- 《剑指offer》之斐波那契数列
- 剑指offer之斐波那契数列
- 剑指offer之斐波那契数列
- 【剑指offer】斐波那契数列
- 剑指offer--斐波那契数列
- 剑指Offer-斐波那契数列
- 剑指offer:斐波那契数列
- 《剑指offer》斐波那契数列
- 剑指 offer:斐波那契数列
- UVa 116 - Unidirectional TSP(DP)
- 算法:在一个集合中选取所有符合条件的元素组合
- Mac 上的新利器-Visual Studio Code
- HDU-1272-小希迷宫
- “黑马程序员”Java 基础之函数
- 剑指Offer之 - 斐波那契数列
- 静态类成员
- Best Time to Buy and Sell Stock IV Leetcode Java
- 深入理解ThreadLocal
- 我的排序
- java匿名对象
- UVa 1347 - Tour(DP)
- “黑马程序员”java面向对象基础_内部类
- atitit..国富论 在现代it企业项目管理中的作用attialx 总结---国富论读后感 attialx