本次主题---》斐波那契数列!!!比较老套的题目了,一看到这个题目,就想起兔子。。。
两种解法:递归;迭代~
先看递归:
-
int fib(int n){
-
if(n==0||n==1) return n;
-
else return( fib(n-1)+fib(n-2));
-
}
这种解法的缺点就是太耗资源,于是有人提出用dp解决,但是一般dp都能够用迭代来降低一个维度,所以就有了如下的代码:
-
int fib2(int n){
-
if(n==0||n==1) return n;
-
int res, first = 0, second=1;
-
for(int i = 2; i <=n; i++){
-
res = first + second;
-
first = second;
-
second = res;
-
}
-
return res;
-
}
最近事情有点多,见谅见谅~
阅读(2484) | 评论(0) | 转发(0) |