Computer >> Máy Tính >  >> Lập trình >> Javascript

Vấn đề về cầu thang đệ quy trong JavaScript

Giả sử chúng ta gặp sự cố sau -

Có n cầu thang, một người đứng ở dưới cùng muốn lên đến đỉnh. Người đó có thể leo 1 hoặc 2 cầu thang cùng một lúc. Chúng tôi bắt buộc phải đếm số cách để người đó có thể lên đến đỉnh.

Chúng tôi được yêu cầu viết một hàm JavaScript nhận một số n biểu thị số cầu thang. Hàm sẽ đếm và trả về số cách cầu thang có thể leo được.

Ví dụ

Sau đây là mã -

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));

Đầu ra

Sau đây là kết quả trên bảng điều khiển -

89
5
377