Minimum Depth of Binary Tree

来源:互联网 发布:et软件下载 编辑:程序博客网 时间:2024/05/26 09:57

Given a binary tree, find its minimum depth.

The minimum depth is the number of nodes along the shortest path from the root node down to the nearest leaf node.

思路:Using  recursion to solve this problem.

易错点: 必须是叶子节点才能返回1, left  和 right 初始化必须为 Integer.MAX_VALUE , 防止出现单边不是叶子节点的情况。

/** * Definition for binary tree * public class TreeNode { *     int val; *     TreeNode left; *     TreeNode right; *     TreeNode(int x) { val = x; } * } */public class Solution {    public int minDepth(TreeNode root) {        if(root == null)            return 0;        if(root.left == null && root.right == null)            return 1;        int left = Integer.MAX_VALUE, right = Integer.MAX_VALUE;        if(root.left != null)            left = minDepth(root.left);        if(root.right != null)            right = minDepth(root.right);        return Math.min(left, right) + 1;    }}


0 0
原创粉丝点击