Hot100:二叉树的右视图(Binary Tree Right Side View)层序遍历取每层最后一个 ACERS 解析

副标题 / 摘要 LeetCode 199 不是在考“看图想象力”,而是在考你能不能把视角问题翻译成层级问题。只要意识到右视图就是每一层最右边那个节点,这题就会立刻变成一个标准层序遍历。 预计阅读时长:10~13 分钟 标签:Hot100、二叉树、BFS、层序遍历、队列 SEO 关键词:Binary Tree Right Side View, 二叉树的右视图, 层序遍历, BFS, 右优先 DFS, LeetCode 199 元描述:系统讲透 LeetCode 199 的层序遍历解法,解释“右视图 = 每层最后一个节点”的本质,并补充右优先 DFS 视角。 A — Algorithm(题目与算法) 题目还原 给定一棵二叉树的根节点 root,想象你站在它的右侧,从上到下观察这棵树,返回你能看到的节点值。 输入输出 名称 类型 描述 root TreeNode 二叉树根节点 返回值 int[] 从上到下看到的右视图节点值 示例 1 输入:root = [1,2,3,null,5,null,4] 输出:[1,3,4] 示例 2 输入:root = [1,2,3,4,null,null,null,5] 输出:[1,3,4,5] 示例 3 输入:root = [1,null,3] 输出:[1,3] 示例 4 输入:root = [] 输出:[] 提示 二叉树的节点个数范围是 [0, 100] -100 <= Node.val <= 100 目标读者 已经会层序遍历,但不够熟悉“每层保留哪个节点”这类变形题的学习者 一看到“从某个方向看到的节点”就容易被题面叙述绕进去的开发者 想把 102 + 199 这一组 BFS 树题系统化的读者 背景 / 动机 这题很适合练习一个非常重要的动作: ...

2026年4月20日 · 8 分钟 · map[name:Jeanphilo]

Hot100:二叉树的层序遍历(Binary Tree Level Order Traversal)BFS / DFS ACERS 解析

副标题 / 摘要 层序遍历是二叉树 BFS 模板的起点。真正关键的不是“用队列”,而是“如何把同一层的节点切分出来”。本文按 ACERS 结构拆解 LeetCode 102 的按层处理方法、DFS 深度分桶备选方案,以及工程里常见的分层遍历场景。 预计阅读时长:10~12 分钟 标签:Hot100、二叉树、BFS、DFS、队列、层序遍历 SEO 关键词:Hot100, Binary Tree Level Order Traversal, 二叉树的层序遍历, BFS, 队列, LeetCode 102 元描述:系统讲透 LeetCode 102 的层序 BFS、层宽控制与 DFS 深度分桶思路,并延伸到组织树、菜单树和波次执行等工程场景。 目标读者 想把 BFS 模板真正固定下来的 Hot100 刷题读者 会普通遍历,但一到“按层输出”就容易把层边界写乱的开发者 需要按深度分组展示树形结构的工程师 背景 / 动机 LeetCode 102 是树题里最标准的 BFS 入门题之一。 它训练的不是“遍历所有节点”,而是两件更重要的事: 如何用队列维护“下一批待处理节点” 如何准确切出“这一层”和“下一层”的边界 很多 BFS bug 都来自这里: 在遍历当前层时直接用不断变化的 queue.length 一边弹当前层,一边把新孩子混进当前层结果 忘记空树处理,导致访问空指针 把 102 的模板写稳,后面的: 右视图 每层平均值 锯齿层序遍历 最小深度 / 最大深度的 BFS 写法 都会自然很多。 ...

2026年3月15日 · 8 分钟 · map[name:Jeanphilo]