斐波那契数列的递归算法
时间: 2023-10-18 15:12:57 浏览: 118
递归算法算斐波那契数列
斐波那契数列是指:1、1、2、3、5、8、13、21、34、……
递归算法实现斐波那契数列如下:
```
int fibonacci(int n) {
if (n == 1 || n == 2) {
return 1;
} else {
return fibonacci(n-1) + fibonacci(n-2);
}
}
```
这个递归算法的思路是:当 n == 1 或 n == 2 时,返回 1;否则,返回 fibonacci(n - 1) + fibonacci(n - 2)。这里用到了递归调用,直到遇到 n == 1 或 n == 2 时,开始返回。
但这个算法的时间复杂度是指数级的,效率较低。因为每个数都会被重复计算多次,而且递归调用也会带来开销。所以在实际应用中,更多使用迭代实现斐波那契数列。
阅读全文