LeetCode 111 二叉树最小深度

Leetcode 111 二叉树最小深度

给定一颗二叉树,求根节点到叶子节点的最短路径(最小深度)

class Solution{
    public int minDepth(TreeNode root){
        //若无根节点(空树),则返回0
        if(root==null) {
            return 0;
        }
        //叶子节点,向上返回1,递归结束
        else if(root!=null && root.left==null && root.right==null)
        else {
            //子树非空,继续向下搜索到根节点
            if(root.left!=null && root.right==null) {
                return 1 + minDepth(root.left);
            }
            else if(root.left==null && root.right!=null) {
                return 1 + minDepth(root.right);
            }
            else(root.left!=null && root.right!=null) {
                return 1 + Math.min(minDepth(root.left), minDepth(root.right));
            }
        }
    }
}
上一篇:Codeforces Round #723 (Div. 2) 个人题解


下一篇:一致性hash算法及java实现