0%

斐波那契数列

斐波那契数列:

0、1、1、2、3、5、8、13、21、34、55、89、144、233、377、610、987、1597、2584、4181、6765、10946、17711、28657、46368、75025、121393、196418、317811 ……

  • 2 是上两项的和(1+1)
  • 3 是上两项的和(1+2)
  • 5 是(2+3)
  • 依此类推!

规律:当前项的值是上两项的和,第n项的值等于Xn = X(n-1)+X(n+1)

求斐波那契数列中第n项的值:

1
2
3
4
5
6
7
8
9
10
11
12
13
const fibonacci = (n: number) => {
let pre = 1,cur = 1;
if (n === 0) {
return 0;
}
if (n === 1 || n === 2) {
return 1;
}
for (let i = 3; i <= n; i++) {
[pre, cur] = [cur, pre + cur];
}
return cur;
};