Hot 100 --- 最长递增子序列
本文讲解最长递增子序列的核心思路:方法一是 O(n²) 的 DP 枚举(以每个元素结尾的 dp[i]),方法二是 O(n log n) 的二分优化(维护各长度子序列的最小末尾值),从重复组合的浪费中提炼出"保留最小末尾"的剪枝
Hot 100 --- 单词拆分
本文讲解单词拆分的核心思路:dp[i] 表示 s 的前 i 个字符能否拆成字典单词,枚举切割点 j,dp[j] 且 [j,i) 是单词则 dp[i] 为 true,从暴力 DFS 优化到 O(n²) 的 DP 判定
枚举类DP进阶:完全平方数与零钱兑换
本文从线性 DP 进阶到枚举类 DP:完全平方数与零钱兑换两题合一讲解,dp[i] 由枚举"最后一步"的候选集合推出,min(dp[i - j²] + 1) 与 min(dp[i - coin] + 1) 同源
Hot 100 --- 打家劫舍
本文讲解打家劫舍的核心思路:dp[i] 表示偷到第 i 房的最大金额,偷或不偷第 i 房两种情况取最大,滚动变量优化到 O(1) 空间
动态规划入门
本文讲解动态规划入门:动态规划是解决什么问题的、这类型问题的特征、状态定义与状态转移方程等通用概念,并用斐波那契、爬楼梯、杨辉三角三个例题从暴力递归一步步演进到 DP 表格
AI Coding 工程化实践:从想法到落地的完整方法论
AI 还没有强大到"一句提示词出成品"的程度。基于多家 Coding Plan 的真实付费使用经验,总结一套从想法到落地的完整 AI Coding 工程化方法论:文档先行、方案先行、多重审阅、上下文隔离、Skill 沉淀,帮你把浪费的 Token 变成省下的钱。
Hot 100 --- 划分字母区间
本文讲解划分字母区间的核心思路:先记录每个字符最后出现位置,再用"最远边界"贪心切割,i == curMaxEnd 时切一刀,O(n) 完成
Hot 100 --- 跳跃游戏 II
本文讲解跳跃游戏 II 的核心思路:分层遍历(隐式 BFS)和落点选择两种贪心写法,每跳都取最远可达,求到终点的最少跳数
Hot 100 --- 跳跃游戏
本文讲解跳跃游戏的核心思路:不关心具体路径,只维护"最远可达位置",被覆盖的走法直接丢弃,从路径枚举降到 O(n)
Hot 100 --- 买卖股票的最佳时机
本文讲解买卖股票的最佳时机的核心思路:每个卖出日的最优买入日就是它前面的历史最低价,一次遍历同时维护最小价格和最大利润,从 O(n²) 降到 O(n)





