剑指Offer系列-面试题9:斐波那契数列
2017-02-03 16:22
375 查看
题目:写一个函数,输入n,求斐波那契(Fibonacci)数列的第n项。
效率很低的解法(递归实现):long long Fibonacci(unsigned int n)
{
if(n <= 0)
return 0;
if(n == 1)
return 1;
return Fibonacci(n - 1) + Fibonacci(n - 2);
}
从f(0)、f(1)、f(2)由低往高算:
效率很低的解法(递归实现):long long Fibonacci(unsigned int n)
{
if(n <= 0)
return 0;
if(n == 1)
return 1;
return Fibonacci(n - 1) + Fibonacci(n - 2);
}
从f(0)、f(1)、f(2)由低往高算:
#include <iostream> using namespace std; long long Fibonacci(unsigned n) { int result[2] = {0, 1}; if(n < 2) return result ; long long fibNMinusOne = 1; long long fibnMinusTwo = 0; long long fibN = 0; for(unsigned int i = 2; i <= n; ++i) { fibN = fibNMinusOne + fibnMinusTwo; fibnMinusTwo = fibNMinusOne; fibNMinusOne = fibN; } return fibN; } int main() { cout << Fibonacci(3) << endl; cout << Fibonacci(5) << endl; cout << Fibonacci(10) << endl; return 0; }
相关文章推荐
- 职业发展方向
- 最危害程序员职业生涯的三大观念(十年工龄的程序员为你揭示)
- 面试分享:挑战25K/月的android 高级开发工程师
- 剑指Offer系列-面试题8:旋转数组的最小数字
- Android面试题整理
- 从程序员到CTO的Java技术路线图
- iOS基础面试题收集
- 中国电信绵阳分公司
- 《招聘一个靠谱的iOS》面试题参考答案
- 机器学习面试
- 17年春节各语言程序员努力指数
- 一个普通 iOS 码农的几个小项目相关知识点总结
- 数据挖掘面试题
- 程序员的成长之路(一)
- iOS崩溃统计(程序员每日必备)
- 调查:是什么让程序员快乐?
- 2017嵌入式招聘面试经验分享 你了解哪几点
- 岁月安好,码农也有自己的人生
- 面试问题整理Andorid版本 date: 2017-1-12 21:14:36 categories: 技术
- 翻转单词顺序