0
点赞
收藏
分享

微信扫一扫

SQL数据操作

沐之轻语 2024-02-23 阅读 10

日常leetcode代码思路总结(持续更新)

难易leecode题号题目描述思路
简单121. 买卖股票的最佳时机只准一次买卖0表示持有,1表示不持有;
dp[0][i] = max(dp[0][i-1], -prices[i]);
dp[1][i] = max(dp[1][i-1], dp[0][i] + prices[i])
中等122. 买卖股票的最佳时机 II无限买卖indexMin表示极小值下标,indexMax表示极大值下标,在极大值点切换时,
累加每次indexMax > indexMin -> prices[indexMax]-prices[indexMin],额外需考虑最终一直上涨情况
困难123. 买卖股票的最佳时机 III两次买卖dp[0][0] = 0, dp[0][1] = -prices[0], dp[0][2] = 0, dp[0][3] = -prices[0];
dp[i][1] = max(dp[i-1][1], dp[i][0] - prices[i]); // 第一次买
dp[i][2] = max(dp[i-1][2], dp[i][1] + prices[i]); // 第一次卖
dp[i][3] = max(dp[i-1][3], dp[i][2] - prices[i]); // 第二次买
dp[i][4] = max(dp[i-1][4], dp[i][3] + prices[i]); // 第二次卖
困难188. 买卖股票的最佳时机 IVk次买卖由2次买卖找规律推导出来,k = k * 2,通过奇偶进行[0, n), [0, k)双层遍历
举报

相关推荐

0 条评论