总结网格 DFS 的遍历框架、访问标记和边界处理,并应用于多类岛屿问题。
2020年4月15日 · 4104 字
总结网格 DFS 的遍历框架、访问标记和边界处理,并应用于多类岛屿问题。
从迭代中序遍历出发,讲解如何利用遍历序列中的相邻结点解决二叉树问题。
以两道较难的二叉树题为例,用定义子问题、递归求解和组合结果的三步方法拆解复杂问题。
以二叉树直径为例,说明如何在递归遍历中用全局变量汇总跨子树的答案。
比较 Combination Sum 系列题目的细微条件差异,用统一的回溯框架理解候选集合、去重与动态规划边界。
讲解含重复元素的子集、排列与组合问题,归纳排序、剪枝和去重的通用策略。
从候选集合出发梳理子集、排列与组合问题,推导统一而清晰的回溯代码框架。
以变位词问题为例,讲解如何用计数器和多重集合表达字符频次并简化解法。
以数组旋转和单词反转为例,说明熟练组合 reverse 基本操作如何简化算法设计。
通过 LeetCode 148 串联链表拆分、快慢指针和归并排序,完成一道经典链表综合题。