代码随想录算法训练营第四十九天 |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])

  • -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])

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容