Hot100:对称二叉树(Symmetric Tree)镜像递归 / BFS ACERS 解析
副标题 / 摘要 对称二叉树的难点不在遍历,而在“比较方向”。你比较的不是左对左、右对右,而是镜像位置上的节点对。本文按 ACERS 结构拆解 LeetCode 101 的镜像递归合同、BFS 成对入队写法,以及工程中的对称结构校验场景。 预计阅读时长:10~12 分钟 标签:Hot100、二叉树、DFS、BFS、对称性 SEO 关键词:Hot100, Symmetric Tree, 对称二叉树, 镜像递归, BFS, LeetCode 101 元描述:系统讲透 LeetCode 101 的镜像递归与 BFS 对称校验思路,并延伸到布局树与拓扑模板的对称检查。 目标读者 刚从 100 相同的树过渡到“镜像比较”的刷题读者 会写普通树递归,但对“外侧 / 内侧”比较关系容易写乱的开发者 需要在布局树、模板树、镜像结构里做左右对称校验的工程师 背景 / 动机 LeetCode 101 很适合作为树题里的“方向感”训练: 你要先意识到,对称不是“左右子树完全一样” 它要求的是“左边看过去”和“右边镜像过来”之后一致 也就是说,比较方向从“同向”变成了“交叉” 很多人做这题时容易犯三类错误: 还沿用 100 的思路,写成 left.left 对 right.left 只比较节点值,不比较空节点位置 先翻转一棵子树再比较,结果多做了一轮变换,逻辑也更绕 这题真正训练的是“镜像递归模板”。掌握后,树对称、树镜像、结构匹配等题都会更清楚。 核心概念 镜像关系:左子树的左边,要和右子树的右边对应;左子树的右边,要和右子树的左边对应 外侧 / 内侧配对:left.left 对 right.right,left.right 对 right.left 成对递归:递归函数参数是两个节点,表示“这两个位置是否互为镜像” 成对入队:BFS 里队列保存的不是单个节点,而是需要一起比较的节点对 A — Algorithm(题目与算法) 题目还原 给你一个二叉树的根节点 root,检查它是否轴对称。 ...