使用 JavaScript 查找帕多万序列的第 n 个元素


帕多万序列

帕多万序列是以初始值 − 定义的整数序列 P(n)

P(0) = P(1) = P(2) = 1

和递推关系,

P(n) = P(n-2) + P(n-3)

P(n) 的前几个值是

1, 1, 1, 2, 2, 3, 4, 5, 7, 9, 12, 16, 21, 28, 37, 49, 65, 86, 114, 151, 200, 265, …

问题

我们需要编写一个 JavaScript 函数,该函数接收一个数字 n,并返回帕多万序列的第 n 项。

示例

以下是代码 −

 在线演示

const num = 32;
const padovan = (num = 1) => {
   let secondPrev = 1, pPrev = 1, pCurr = 1, pNext = 1;
   for (let i = 3; i <= num; i++){
      pNext = secondPrev + pPrev;
      secondPrev = pPrev;
      pPrev = pCurr;
      pCurr = pNext;
   };
   return pNext;
};
console.log(padovan(num));

输出

5842

更新于: 19-Apr-2021

177 次

开启您的 职业

完成课程后获得认证

开始
广告
© . All rights reserved.