分治策略——斐波那契数列
Posted nicholastwo
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了分治策略——斐波那契数列相关的知识,希望对你有一定的参考价值。
/**
* 斐波那契数列是
* f(0)=0 n=0
* f(1)=1 n=1
* f(n-1)+f(n-2) n>1
*
* 如果采用递归求数列,有很多数字需要重复计算多次,采用分治法可以避免重复计算,
* 使计算的时间复杂段由指数级变为线性的O(n)
*
*/
public int fibonacci(int n){
int rs = 1;
int f1=1;
int f2=1;
if(n<2){
return 1;
}
//通过保存中间结果的方法可以避免多次的重复计算
for(int i=2;i<n;i++){
rs = f1+f2;
f1=f2;
f2=rs;
}
return rs;
}
}
以上是关于分治策略——斐波那契数列的主要内容,如果未能解决你的问题,请参考以下文章