日常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)双层遍历
相关推荐
君义_noip5 小时前
信息学奥赛一本通 1661:有趣的数列 | 洛谷 P3200 [HNOI2009] 有趣的数列
c++·算法·组合数学·信息学奥赛·csp-s
程序员:钧念5 小时前
深度学习与强化学习的区别
人工智能·python·深度学习·算法·transformer·rag
英英_6 小时前
MATLAB数值计算基础教程
数据结构·算法·matlab
一起养小猫6 小时前
LeetCode100天Day14-轮转数组与买卖股票最佳时机
算法·leetcode·职场和发展
hele_two7 小时前
快速幂算法
c++·python·算法
l1t7 小时前
利用DeepSeek将python DLX求解数独程序格式化并改成3.x版本
开发语言·python·算法·数独
jllllyuz7 小时前
基于子集模拟的系统与静态可靠性分析及Matlab优化算法实现
算法·matlab·概率论
程序员-King.8 小时前
day143—递归—对称二叉树(LeetCode-101)
数据结构·算法·leetcode·二叉树·递归
BlockChain8888 小时前
字符串最后一个单词的长度
算法·go
爱吃泡芙的小白白8 小时前
深入解析:2024年AI大模型核心算法与应用全景
人工智能·算法·大模型算法