代码随想录算法训练营第四十九天 |121. 买卖股票的最佳时机、122. 买卖股票的最佳时机 II
121. 买卖股票的最佳时机
题目链接:121. 买卖股票的最佳时机
-
dp含义:
dp[i][0]持有股票的最大利润,dp[i][1]不持股最大金额 -
递推公式:
- i持有,i-1不持有:
dp[i][0] = Math.max(dp[i - 1][0], -prices[i]) - i不持有,i-1持有:
dp[i][1] = Math.max(dp[i - 1][1], dp[i - 1][0] + prices[i])
- i持有,i-1不持有:
-
-pricesp[i]是因为初始值是0,且只能买一次股票
122. 买卖股票的最佳时机 II
题目链接:122. 买卖股票的最佳时机 II
-
递推公式:
- i持有,i-1不持有:
dp[i][0] = Math.max(dp[i - 1][0], dp[i - 1][1] - prices[i])前一天不持股的最大现金 - i不持有,i-1持有:
dp[i][1] = Math.max(dp[i - 1][1], dp[i - 1][0] + prices[i])
- i持有,i-1不持有: