Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

ปัญหา Recursive Staircase ใน JavaScript


สมมติว่าเรามีปัญหาดังต่อไปนี้ -

มีบันได 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