JavaScript 中的递归楼梯问题

javascriptweb developmentfront end technologyobject oriented programming更新于 2024/2/21 11:56:17

假设我们有以下问题 −

有 n 个楼梯,站在底部的人想爬到顶部。这个人一次可以爬 1 或 2 个楼梯。我们需要计算这个人可以爬到顶部的方法数。

我们需要编写一个 JavaScript 函数,该函数接受一个表示楼梯数量的数字 n。该函数应该计算并返回可以爬楼梯的方法数。

示例

以下是代码 −

const recursiveStaircase = (num = 10) => {
   if (num <= 0) {
      return 0;
   }
   const steps = [1, 2];
   if (num <= 2) {
      return steps[num - 1];
   }
   for (let currentStep = 3; currentStep <= num; currentStep += 1) {
      [steps[0], steps[1]] = [steps[1], steps[0] + steps[1]];
   }
   return steps[1];
};
console.log(recursiveStaircase());
console.log(recursiveStaircase(4));
console.log(recursiveStaircase(13));

输出

以下是控制台上的输出 −

89
5
377

相关文章


有用资源