Update 0746.使用最小花费爬楼梯.md

This commit is contained in:
fw_qaq
2023-04-13 12:28:51 +08:00
committed by GitHub
parent 1f305e047b
commit e9c4d54f53

View File

@ -330,22 +330,27 @@ var minCostClimbingStairs = function(cost) {
```typescript
function minCostClimbingStairs(cost: number[]): number {
/**
dp[i]: 走到第i阶需要花费的最少金钱
dp[0]: 0;
dp[1]: 0;
...
dp[i]: min(dp[i - 1] + cost[i - 1], dp[i - 2] + cost[i - 2]);
*/
const dp = [];
const length = cost.length;
dp[0] = 0;
dp[1] = 0;
for (let i = 2; i <= length; i++) {
dp[i] = Math.min(dp[i - 1] + cost[i - 1], dp[i - 2] + cost[i - 2]);
}
return dp[length];
};
const dp = [0, 0]
for (let i = 2; i <= cost.length; i++) {
dp[i] = Math.min(dp[i - 1] + cost[i - 1], dp[i - 2] + cost[i - 2])
}
return dp[cost.length]
}
```
不使用 dp 数组
```typescript
function minCostClimbingStairs(cost: number[]): number {
let dp_before = 0,
dp_after = 0
for (let i = 2; i <= cost.length; i++) {
let dpi = Math.min(dp_before + cost[i - 2], dp_after + cost[i - 1])
dp_before = dp_after
dp_after = dpi
}
return dp_after
}
```
### Rust