LeetCode 746. Min Cost Climbing Stairs

dp[i] means the minimum cost to reach i-th (index start from 0) stair.

DP formula:

dp[i] = min(dp[i-1], dp[i-2])+cost[i]     i>=2

base cases: dp[0]=cost[0]; dp[1]=cost[1];

target: min(dp[n-1], dp[n-2])

 

优化: 由于 dp[i] 只和前两个状态有关,因此只需两个变量来保存即可,空间复杂度从 O(n) 降为 O(1)。

 

posted @ 2018-04-22 19:26  約束の空  阅读(91)  评论(0)    收藏  举报