斐波那契O(N)方法实现
Posted heibingtai
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了斐波那契O(N)方法实现相关的知识,希望对你有一定的参考价值。
问题描述:
实现时间复杂度O(N)的斐波那契解法。
算法实现:
public static int fibonacci(int n) {
if(n < 1) {
return 0;
}
if(n == 1 || n == 2) {
return 1;
}
int pre = 1;
int res = 1;
int tmp;
for(int i = 3; i <= n; i++) {
tmp = res;
res += pre;
pre = tmp;
}
return res;
}
算法解析:
1.区别于暴力递归,通过设置额外遍历降低时间复杂度;
2.具体实现看代码即可,要有意识的追求时间复杂度更低的解法,并代码实现;
3.它山之石,可以攻玉。
以上是关于斐波那契O(N)方法实现的主要内容,如果未能解决你的问题,请参考以下文章