一周算法复盘|二叉树专题刷题小结:从提笔卡顿到梳理复盘

前言

本周主攻二叉树系列算法,集中刷了8道高频经典二叉树题目:中序遍历、最大深度、翻转二叉树、对称二叉树、二叉树直径、层序遍历、有序数组转二叉搜索树、验证二叉搜索树、二叉搜索树第K小元素。刷题过后暴露明显短板:代码写得不熟练,隔段时间复盘时思路卡顿、没法独立写出完整代码,同步穿插了专业课复盘,借着错题梳理整周学习得失。

一、刷题内容汇总

本周聚焦LeetCode二叉树基础+二叉搜索树经典题型,清单如下:

1. 二叉树的中序遍历(递归+迭代两种写法)

2. 二叉树的最大深度(深度优先DFS、广度优先BFS)

3. 翻转二叉树(左右子树交换递归)

4. 对称二叉树(双指针同步比对左右子树)

5. 二叉树的直径(后序遍历求左右深度,更新最长路径)

6. 二叉树的层序遍历(队列实现逐层遍历)

7. 将有序数组转换为二叉搜索树(二分中点做根,递归构建平衡BST)

8. 验证二叉搜索树(中序升序校验/区间限定递归)

9. 二叉搜索树中第K小的元素(中序遍历天然升序,取第k个值)

二、现存问题:刷题误区反思

1. 当场能看懂,复盘写不出

做题时跟着提示、参考思路能完成代码,但隔天复盘独立敲代码就卡壳:

- 递归终止条件模糊,经常忘记 root == null 边界判断;

- 层序遍历容易忘记初始化队列、每层统计节点数量;

- BST相关题型混淆性质,忘记中序遍历有序这个核心特点。

2. 只会单一写法,变通能力差

大部分题目只熟练递归写法,迭代版(栈模拟中序、队列层序)生疏,题目限制不能用递归时就无从下手。

3. 只追求AC,缺少总结

写完题目直接过,没有提炼题型模板:二叉树大部分题目依托前/中/后序、层序四种遍历衍生,没有归纳通用解题框架,导致换个问法就思路混乱。

三、调整方案:后续复习规划

1. 二叉树复盘节奏

1. 每日复盘2道旧题:不看笔记、不搜题,闭眼梳理思路再手写代码,卡住的地方标注错题,第二天优先回看;

2. 分类归纳模板:

- DFS类(深度、对称、翻转、直径):依托前/后序递归框架;

- BFS类(层序遍历):固定队列模板;

- BST类(验证、有序数组建树、第K小):紧扣中序升序特性。

3. 递归、迭代两种写法交替练习,杜绝只会单一解法。

2. 专业课+算法并行学习

本周同步复盘课内专业课,采用「上午复盘课本知识点+下午刷对应算法」的模式:

- 数据结构课本二叉树章节精读,对照课本定义理解代码逻辑,把课本理论落地到代码实现;

- 当天专业课学到的知识点,当晚找1~2道对应算法巩固,打通理论和实操。

四、下周目标

1. 本周9道二叉树题目做到任意抽题,10分钟内独立写出递归+迭代双版本代码;

2. 完成二叉树题型思维导图,区分普通二叉树、二叉搜索树解题区别;

3. 稳步推进专业课复习,算法不再盲目刷题,以“吃透旧题>刷新题”为主。

小结

刷题不是刷数量,吃透才是关键。这周踩了“只刷不复盘”的坑,后续放慢刷题速度,把旧题啃熟,稳步夯实二叉树基础,循序渐进提升代码熟练度。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容