1.手写斐波那契数列代码
时间: 2023-11-20 10:51:43 浏览: 35
以下是使用递归实现斐波那契数列的代码:
```
function fibonacci(n) {
if (n <= 1) {
return n;
}
return fibonacci(n - 1) + fibonacci(n - 2);
}
```
这个函数接受一个整数参数n,返回斐波那契数列的第n项。如果n小于等于1,直接返回n。否则,递归调用函数计算前两项的和。
注意:递归实现斐波那契数列的效率较低,因为会重复计算很多项。在实际应用中,应该使用迭代或动态规划等更高效的算法。
相关问题
3. 打印fibonacci数列
很高兴回答您的问题!以下是打印Fibonacci数列的Python代码示例:
```python
def Fibonacci(n):
if n <= 0:
print("输入的n应该大于0!")
elif n == 1:
return 0
elif n == 2:
return 1
else:
return Fibonacci(n-1) + Fibonacci(n-2)
# 打印前 n 个Fibonacci数列
n = 10
print("前 %d 个Fibonacci数列:" % n)
for i in range(1, n+1):
print(Fibonacci(i), end=' ')
```
这是一个递归方法,会打印前 n 个Fibonacci数列。如果您有其他问题,欢迎提出!
斐波那契数列代码js
以下是两种JavaScript实现斐波那契数列的代码:
1. 使用递归方法实现斐波那契数列:
```javascript
function fibonacci(n) {
if (n <= 1) {
return n;
}
return fibonacci(n - 1) + fibonacci(n - 2);
}
console.log(fibonacci(8)); // 输出:21
```
2. 使用闭包实现斐波那契数列:
```javascript
const fibonacci = (function() {
const mem = [0, 1];
const f = function(n) {
let res = mem[n];
if (typeof res !== 'number') {
mem[n] = f(n - 1) + f(n - 2);
res = mem[n];
}
return res;
};
return f;
})();
console.log(fibonacci(8)); // 输出:21
```