[二叉树类][easy] minimum-depth-of-bi

2018-07-03  本文已影响0人  欠我的都给我吐出来

题目描述
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.
寻找一棵二叉树最短的路径长度。
个人感觉在做的时候,容易出问题的点在于,如果一棵树只有left端,没有right节点,那么此时返回的应该是left端的长度,而不应该简单的认为返回min(left_depth,right_depth)。

java代码

public class Solution {
    public int run(TreeNode root) {
        if(root==null){
            return 0;
        }
        int left_depth=run(root.left);
        int right_depth=run(root.right);
        if(left_depth+right_depth==0){
            return 1;
        }
        else if(left_depth==0 ||right_depth==0){
            return left_depth+right_depth+1;
        }
        else{
            if(left_depth>right_depth){
                return right_depth+1;
            }
            return left_depth+1;
        }
    }
}
上一篇 下一篇

猜你喜欢

热点阅读