关于动态规划【力扣121.买卖股票的最佳时机和122.买卖股票的最佳时机II的思考】

📅 2026/6/26 17:27:56
关于动态规划【力扣121.买卖股票的最佳时机和122.买卖股票的最佳时机II的思考】
1、关键思路【把“买卖”股票问题转化为“持有不持有”股票问题】比如在第3天我持有这支股票不代表我今天有买入这支股票有可能我第1天就买了这支股票现在只是持有状态我手头上有这支股票。(这样我们就可以用dp[i][0]和dp[i][1]表示更多状态就算不买入股票的那天也可以用dp数组表示)2、121.买卖股票的最佳时机和122.买卖股票的最佳时机II的区别121.买卖股票的最佳时机一支股票只能买卖一次122.买卖股票的最佳时机II一支股票可以买卖多次3、122.买卖股票的最佳时机II的关键思路因为本题可以买卖多次所以在计算第i天持有股票最大利润的时候可以从“前一天就持有的最大利润”的状态转移过来【也可以是从“前一天不持有的最大利润 而今天再买入”的状态转移过来】如果昨天就是持有状态今天就不能再买入了如果今天要买入说明昨天是不持有状态不管昨天有没有卖出总之昨天就是手头上不持有股票之前学习贪心算法的时候有做到这题。使用的是贪心算法。但是贪心算法只能解决买卖股票的具体问题而动态规划可以解决买卖股票的一系列问题