gpt4 book ai didi

javascript - 我无法理解leetcode 70中javascript的DP解决方案

转载 作者:行者123 更新时间:2023-12-02 23:33:01 25 4
gpt4 key购买 nike

我对leetcode中爬楼梯的引用答案感到困惑。

问题是这样的:

您正在爬楼梯。需要n步才能到达顶部。

每次您可以爬 1 或 2 级台阶。您可以通过多少种不同的方式登上顶峰?

   var climbStairs = function(n) {

if (n < 1) return 0;
if (n == 1) return 1;
if (n == 2) return 2;

// a saves the second-to-last sub-state data, b saves the first sub-state data, temp saves the current state data
let a = 1, b = 2;
let temp = a + b;
for (let i = 3; i <= n; i++) {
temp = a + b;
a = b;
b = temp;
}
return temp;
};

答案使用DP来解决,但我无法理解for循环是如何工作的,我想我错过了一些javascript特性。

最佳答案

这相当于硬币找零问题:

Given a set of coins and amount, Write an algorithm to find out how many ways we can make the change of the amount using the coins given.

N 是您的金额,可用硬币为 1 和 2 美分。

以下是关于找零问题的全面解释:https://hackernoon.com/the-coin-change-problem-explained-ddd035a8f22f

这是 Quora 上的一个帖子:https://www.quora.com/What-is-an-easy-way-to-understand-the-coin-change-problem-in-dynamic-programming

关于javascript - 我无法理解leetcode 70中javascript的DP解决方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56409823/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com