二叉树根结点到叶节点的最短距离

Posted 排序和map

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二叉树根结点到叶节点的最短距离相关的知识,希望对你有一定的参考价值。

参考:https://blog.csdn.net/weixin_41050155/article/details/83834623

 

给定一棵二叉树,找出它的最小深度。最小深度是沿着从根节点到最近叶节点的最短路径的节点数目。

 

思路:不是比较max value什么的,而是递归

  • 当节点左右子树都为null时,返回0
  • 当左子树为null,返回右子树递归+1;
  • 当右字数为null,返回左子树递归+1;
  • 当左右子树都不为空,返回左右子树递归最小值
public class Solution {
    public int run(TreeNode root) {
     //当节点左右子树都为null时,返回0
        if(root==null)
            return 0;
            //当左子树为null,返回右子树递归+1;
        if(root.left==null)
           return run(root.right)+1;
           //当右字数为null,返回左子树递归+1;
        if(root.right==null)
           return run(root.left)+1;
           //当左右子树都不为空,返回左右子树递归最小值。
        int right=run(root.right)+1;
        int left=run(root.left)+1;
        return left>right?right:left;
    }
}
————————————————
版权声明:本文为CSDN博主「Cynthia_wpp」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_41050155/article/details/83834623

 

以上是关于二叉树根结点到叶节点的最短距离的主要内容,如果未能解决你的问题,请参考以下文章

二叉树的深度

二叉树的深度

111. Minimum Depth of Binary Tree

18.11.13 二叉树三则

十七:二叉树的最小深度

55 二叉树的深度