Posts
All the articles I've posted.
-
LeetCode Hot 100——图论篇(DFS、BFS、拓扑排序、Trie)
图论四题:岛屿数量 DFS 淹没、腐烂橘子多源 BFS、课程表拓扑排序判环、实现 Trie 前缀树。
-
LeetCode Hot 100——二叉树篇(遍历、深度、最近公共祖先)
二叉树十五题:中序与层序遍历、最大深度与直径、验证 BST、前中序构造、最近公共祖先、最大路径和。
-
字母异位词分组——HashMap处理集合分组的经典模式
利用规范表示作为 HashMap 的 key,将字母异位词归为等价类,揭示分组问题的通用模式。
-
LeetCode Hot 100——链表篇(反转、合并、环检测、K 个一组翻转)
链表十四题:三指针反转、dummy 节点合并、Floyd 快慢指针判环、K 个一组翻转、归并排序链表、LRU 缓存。
-
合并K个升序链表——小顶堆与分治归并
合并 K 个升序链表的两大解法:小顶堆每次取 K 个链表的当前最小头节点,分治法两两归并逐步合并,时间复杂度对比分析。
-
LeetCode Hot 100——矩阵篇(原地标记与转置翻转)
矩阵四题:矩阵置零首行首列标记、螺旋矩阵按层遍历、旋转图像转置加翻转、搜索二维矩阵 II 从左下角起步。
-
单调栈与滑动窗口——三个模板解决80%的数组区间问题
单调栈维护有序性解决下一个更大元素问题,单调队列维护时效性解决滑动窗口最大值,有序性与时效性的经典博弈。
-
动态规划——最优子结构与状态转移方程
动态规划两大要素——最优子结构与重叠子问题,通过状态定义和转移方程将指数级递归转化为多项式级递推求解。