025 · Minimum Depth of Binary Tree
algorithm
Problem
给定一棵二叉树的根节点 root。
请返回这棵二叉树的最小深度。
二叉树的最小深度,指的是从根节点到最近叶子节点的最短路径上,经过的节点数量。
叶子节点是没有左孩子、也没有右孩子的节点。
例如,下面这棵树的最小深度是 2:
3
/ \
9 20
/ \
15 7
因为从根节点 3 到叶子节点 9,只经过了 2 个节点。
注意,最小深度必须走到叶子节点才算结束。
例如,下面这棵树的最小深度不是 1,也不是 2:
2
\
3
\
4
根节点 2 没有左子树,但它本身不是叶子节点,所以路径必须继续沿着右子树走到真正的叶子节点 4。
Examples
示例 1
Input: root = [3,9,20,null,null,15,7]
Output: 2
解释:最近的叶子节点是 9,从根节点到它一共经过 2 个节点。
示例 2
Input: root = [2,null,3,null,4,null,5,null,6]
Output: 5
解释:这棵树只有一条向右延伸的路径,必须一直走到叶子节点 6,所以最小深度是 5。
示例 3
Input: root = []
Output: 0
解释:空树没有节点,所以最小深度是 0。
Constraints
- 树中节点的数量范围是 \([0, 10^5]\)
- \(-1000 \leq\)
Node.val\(\leq 1000\)
Link
→ Solution