#2819. 左叶子之和
左叶子之和
左叶子之和
题目描述
给定一棵用 “节点数字矩阵” 表示的二叉树,返回该树所有左叶子节点的值之和。
关键定义
- 左叶子节点:需同时满足两个条件
-
该节点是其父节点的 “左子节点”(对应矩阵中父节点所在行的第 1 个数字)
-
该节点是叶子节点(其对应的矩阵行中两个数字均为
*,表示无左右子节点)
- 节点数字矩阵规则
-
第一行数字:表示树的总节点数
n(节点编号从 1 开始,根节点固定为 1) -
第 2 行到第
n+1行:每行有 2 个元素,对应编号为i-1的节点的左、右子节点(i为当前行号)-
若元素为数字:表示该方向存在子节点,且子节点编号为该数字
-
若元素为
*:表示该方向无对应的子节点
-
示例
示例 1
- 输入(节点数字矩阵):
5 // 总节点数:5个(节点1、2、3、4、5)
2 3 // 节点1的左子节点=2,右子节点=3
* * // 节点2的左子节点=无,右子节点=无(节点2是叶子节点)
4 5 // 节点3的左子节点=4,右子节点=5
* * // 节点4的左子节点=无,右子节点=无(节点4是叶子节点)
* * // 节点5的左子节点=无,右子节点=无(节点5是叶子节点)
-
树结构对应:
-
根节点 = 1,左子节点 = 2(叶子),右子节点 = 3
-
节点 3 的左子节点 = 4(叶子),右子节点 = 5(叶子)
-
-
左叶子节点:节点 2(父节点 1 的左子节点 + 叶子)、节点 4(父节点 3 的左子节点 + 叶子)
-
节点值说明:本题中节点编号即节点值(如节点 2 的值 = 2,节点 4 的值 = 4)
-
输出:
2 + 4 = 6
示例 2
- 输入(节点数字矩阵):
1 // 总节点数:1个(仅节点1)
* * // 节点1的左子节点=无,右子节点=无(节点1是叶子节点)
-
树结构对应:仅根节点 1,无任何子节点
-
左叶子节点:无(根节点无父节点,不存在 “父节点的左子节点” 这一前提)
-
输出:
0
示例 3
- 输入(节点数字矩阵):
4 // 总节点数:4个(节点1、2、3、4)
2 3 // 节点1的左子节点=2,右子节点=3
4 * // 节点2的左子节点=4,右子节点=无
* * // 节点3的左子节点=无,右子节点=无(节点3是叶子节点)
* * // 节点4的左子节点=无,右子节点=无(节点4是叶子节点)
-
树结构对应:
-
根节点 = 1,左子节点 = 2,右子节点 = 3(叶子)
-
节点 2 的左子节点 = 4(叶子),无右子节点
-
-
左叶子节点:节点 4(父节点 2 的左子节点 + 叶子)
-
输出:
4
提示
-
节点总数范围:
[0, 1000](若总节点数为 0,输入仅 1 行0,输出为 0) -
节点值范围(即节点编号):
[-1000, 1000](若节点值为负数,矩阵中直接写负号,如-5) -
矩阵每行固定 2 个元素,仅含数字或
*,无其他符号
题目信息
- 难度:简单
- 相关标签:二叉树、深度优先搜索(DFS)、广度优先搜索(BFS)、树
- 核心考点:
- 理解 “节点数字矩阵” 与二叉树结构的对应关系
- 准确识别 “左叶子节点”(父左子 + 无后代)
- 遍历矩阵统计符合条件的节点值之和