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

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

难易 leecode题号 题目描述 思路
简单 121. 买卖股票的最佳时机 只准一次买卖 0表示持有,1表示不持有; dp0i = max(dp0i-1, -pricesi); dp1i = max(dp1i-1, dp0i + pricesi)
中等 122. 买卖股票的最佳时机 II 无限买卖 indexMin表示极小值下标,indexMax表示极大值下标,在极大值点切换时, 累加每次indexMax > indexMin -> pricesindexMax-pricesindexMin,额外需考虑最终一直上涨情况
困难 123. 买卖股票的最佳时机 III 两次买卖 dp00 = 0, dp01 = -prices0, dp02 = 0, dp03 = -prices0; dpi1 = max(dpi-11, dpi0 - pricesi); // 第一次买 dpi2 = max(dpi-12, dpi1 + pricesi); // 第一次卖 dpi3 = max(dpi-13, dpi2 - pricesi); // 第二次买 dpi4 = max(dpi-14, dpi3 + pricesi); // 第二次卖
困难 188. 买卖股票的最佳时机 IV k次买卖 由2次买卖找规律推导出来,k = k * 2,通过奇偶进行[0, n), [0, k)双层遍历
相关推荐
海绵宝宝转agent9 分钟前
JUC高频面试八股总结个人开源
面试·职场和发展
Nil2081 小时前
leetcode 118杨辉三角
算法·leetcode·职场和发展
wanderist.3 小时前
线性筛法详解:从筛质数到欧拉函数、Möbius 函数与约数函数
java·数据结构·算法
All for pursuit.4 小时前
【设计-1】208.实现Trie (前缀树)
数据结构·c++·算法·leetcode
weixin_307779134 小时前
C++代码实现MATLAB中的crossval函数功能
开发语言·c++·算法·matlab
青少儿编程课堂4 小时前
背包问题(0/1 背包与完全背包)解题精讲——动态规划入门
c++·python·算法·bfs·信息学竞赛
光影少年4 小时前
为什么 JavaScript 中 0.1 + 0.2 !== 0.3,如何让其相等?
前端·javascript·算法
HEJOO95 小时前
Linux 设备驱动系列——使用全局工作队列
java·linux·算法
Code_Solitude5 小时前
c语言:递归
java·c语言·算法
我命由我123455 小时前
Photoshop - Photoshop 使用内容识别填充移除对象
学习·职场和发展·产品运营·求职招聘·职场发展·学习方法·photoshop