日常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)双层遍历
相关推荐
csdn_aspnet1 小时前
C语言 Lomuto分区算法(Lomuto Partition Algorithm)
c语言·开发语言·算法
谙弆悕博士2 小时前
【附C源码】从零实现C语言堆数据结构:原理、实现与应用
c语言·数据结构·算法··数据结构与算法
gaosushexiangji5 小时前
DIC系统推荐:基于千眼狼三维数字图像相关的无人机旋翼疲劳试验全场应变与位移测量
人工智能·算法
小王C语言7 小时前
【线程概念与控制】:线程封装
jvm·c++·算法
圣保罗的大教堂7 小时前
leetcode 796. 旋转字符串 简单
leetcode
kyle~7 小时前
工程数学---点云配准卡布施(Kabsch)算法(求解最优旋转矩阵)
线性代数·算法·矩阵
张二娃同学7 小时前
03_变量常量与输入输出_printf与scanf详解
算法
江南十四行8 小时前
并发编程(一)
java·jvm·算法
z200509308 小时前
今日算法(依旧二叉树)
算法·leetcode·职场和发展
Zxc_8 小时前
《遗传算法:从自然选择到Rastrigin函数优化,手写一个完整的进化求解器》
算法