【剑指offer系列】 斐波那契数列___9
2016-04-07 11:07
232 查看
题目描述:
输入n,求斐波那契数列的第n项。
斐波那契数列的递推公式:
示例:
输入2,f(2)=f(0)+f(1) = 1. 输出1
分析:
如果从n开始向下递归计算的话,根据递归树可以发现会有大量重复的计算。
因此我们从下向上迭代,直到得到第n项的值为止。
代码:
输入n,求斐波那契数列的第n项。
斐波那契数列的递推公式:
示例:
输入2,f(2)=f(0)+f(1) = 1. 输出1
分析:
如果从n开始向下递归计算的话,根据递归树可以发现会有大量重复的计算。
因此我们从下向上迭代,直到得到第n项的值为止。
代码:
long long getFibonacci(unsigned int n){ vector<long long> result(2); result[0]=0; result[1]=1; if(n<=1) return result ; for(unsigned int i=1;i<n;++i){ result[0]=result[0]+result[1]; swap(result[0],result[1]); //result[0]保存f[n-2],result[1]保存f[n-1] } return result[1]; }
相关文章推荐
- Caffe使用step by step:faster-rcnn目标检测matlab代码
- Gson转换json串到Map,Key值是String还是设定值(如Long)?
- nodejs小记之formidable同步图片文件上传
- js长轮询与短轮询的简单理解
- html canvas 自适应
- jQuery插件开发精品教程,让你的jQuery提升一个台阶
- node基础再现--module.exports 和exports
- CSS 的命名和书写
- CSS 的命名和书写
- Shiro学习(9)JSP标签
- Caffe深度学习框架上手教程
- 献给和我合作的过得前端童靴们:jquery源码分析--核心函数(创建jquery空对象)
- 深入理解jQuery插件开发
- NUMA node
- scrapy处理JSON API
- (OK) install-fedora23—gnome classic—dnf—gdm—multi-user—graphical
- javascript:localStorage的兼容性实现
- JS对JSON的操作总结
- fedora安装chrome
- javascript:跨域