问题描述
给定二叉树,找到其最小深度。 最小深度是沿着从根结点到最近的叶子结点的最短路径的节点数。
分析递归实现即可:
- 当前结点为null,表示到达了叶子结点,终止递归,返回0。
- 当前结点非null,表示还没到达叶子结点,
- 左儿子空,右儿子非空,就深度+1并以当前结点为根结点,递归右子树;
- 右儿子空,左儿子非空,就深度+1并以当前结点为根结点,递归左子树;
- 除此之外,左右都非空,就深度+1并返回左右深度的min()值。
public class Solution {
public int getDepth(TreeNode root)