二叉树的最小深度

给定一个二叉树,找出其最小深度。

最小深度是从根节点到最近叶子节点的最短路径上的节点数量。

说明: 叶子节点是指没有子节点的节点。

示例:

给定二叉树 [3,9,20,null,null,15,7],

    3
   / \
  9  20
    /  \
   15   7

返回它的最小深度  2.


public int MinDepth(TreeNode root) {

    if(root == null)
    {
        return 0;
    }

    //根节点不能算是叶节点的情况
    if(root.left == null)
    {
        return MinDepth(root.right) + 1;
    }

    if(root.right == null)
    {
        return MinDepth(root.left) + 1;
    }

    return Math.Min(MinDepth(root.left),MinDepth(root.right)) + 1;
}

首页 我的博客
粤ICP备17103704号