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

日常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. 买卖股票的最佳时机 IV k次买卖 由2次买卖找规律推导出来,k = k * 2,通过奇偶进行[0, n), [0, k)双层遍历
相关推荐
xiaoshiguang31 分钟前
LeetCode:222.完全二叉树节点的数量
算法·leetcode
爱吃西瓜的小菜鸡3 分钟前
【C语言】判断回文
c语言·学习·算法
别NULL5 分钟前
机试题——疯长的草
数据结构·c++·算法
TT哇9 分钟前
*【每日一题 提高题】[蓝桥杯 2022 国 A] 选素数
java·算法·蓝桥杯
yuanbenshidiaos2 小时前
C++----------函数的调用机制
java·c++·算法
唐叔在学习2 小时前
【唐叔学算法】第21天:超越比较-计数排序、桶排序与基数排序的Java实践及性能剖析
数据结构·算法·排序算法
ALISHENGYA2 小时前
全国青少年信息学奥林匹克竞赛(信奥赛)备考实战之分支结构(switch语句)
数据结构·算法
chengooooooo2 小时前
代码随想录训练营第二十七天| 贪心理论基础 455.分发饼干 376. 摆动序列 53. 最大子序和
算法·leetcode·职场和发展
jackiendsc2 小时前
Java的垃圾回收机制介绍、工作原理、算法及分析调优
java·开发语言·算法
姚先生972 小时前
LeetCode 54. 螺旋矩阵 (C++实现)
c++·leetcode·矩阵