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

二叉树的最小深度为根节点到最近叶子节点的距离。
样例

给出一棵如下的二叉树:

1

/     \

2       3

/    \

4      5

这个二叉树的最小深度为 2

分析:与最大深度有区别 有单孩子的情况考虑

/*** Definition of TreeNode:* class TreeNode {* public:*     int val;*     TreeNode *left, *right;*     TreeNode(int val) {*         this->val = val;*         this->left = this->right = NULL;*     }* }*/
class Solution {
public:/*** @param root: The root of binary tree.* @return: An integer*/int minDepth(TreeNode *root) {// write your code hereif(root==NULL)return 0;if(root->left==NULL&&root->right==NULL)return 1;int Left=minDepth(root->left);int  Right=minDepth(root->right);if(root->left==NULL){return Right+1;}if(root->right==NULL){return Left+1;}int depth=Left<Right?Left:Right;return depth+1;}
};

  

转载于:https://www.cnblogs.com/lelelelele/p/6119772.html

LintCode 二叉树的最小深度相关推荐

  1. 【每日一算法】二叉树的最小深度

    每日一算法-二叉树的最小深度 题目 给定一个二叉树,找出其最小深度. 最小深度是从根节点到最近叶子节点的最短路径上的节点数量. 说明: 叶子节点是指没有子节点的节点. 示例: 给定二叉树 [3,9,2 ...

  2. 二叉树-二叉树的最小深度(递归法)

    题意: 给定一个二叉树,找出其最小深度. 最小深度是从根节点到最近叶子节点的最短路径上的节点数量. 思路: 这里使用递归的方法,找二叉树的最小深度 1.先判断根节点是否为空,是返回0: 2.调用函数遍 ...

  3. 《剑指offer》求二叉树的最小深度(非递归法)

    题目:求二叉树的最小深度(实际上该题来自leetcode) 解析:递归法简单些,下面演示下非递归.无外乎层次遍历二叉树了,思想是用current记录当前层的节点数,next记录下一层的节点数,用队列保 ...

  4. c#二叉树 取叶子节点个数_二叉树的最小深度+完全二叉树的节点个数

    二叉树的最小深度 题目:给定一个二叉树,找出其最小深度. 最小深度是从根节点到最近叶子节点的最短路径上的节点数量. 说明:叶子节点是指没有子节点的节点. 示例 1: 输入:root = [3,9,20 ...

  5. 数据结构——二叉树的最小深度算法

    给定一个二叉树,找出其最小深度. 最小深度是从根节点到最近叶子节点的最短路径上的节点数量. 说明:叶子节点是指没有子节点的节点. 输入:root = [3,9,20,null,null,15,7] 输 ...

  6. 111. 二叉树的最小深度 golang

    111. 二叉树的最小深度 给定一个二叉树,找出其最小深度. 最小深度是从根节点到最近叶子节点的最短路径上的节点数量. 说明: 叶子节点是指没有子节点的节点. 示例: 给定二叉树 [3,9,20,nu ...

  7. 二叉树的深度_十七:二叉树的最小深度

    二叉树的最小深度:从根结点到叶结点依次经过的结点(含根.叶结点)形成树的一条路径,最短路径的长度为树的最小深度. 算法一 /** * @description 二叉树最小深度 * @param {*} ...

  8. python创建树结构、求深度_Python实现二叉树的最小深度的两种方法

    找到给定二叉树的最小深度 最小深度是从根节点到最近叶子节点的最短路径上的节点数量 注意:叶子节点没有子树 Example: Given binary tree [3,9,20,null,null,15 ...

  9. LeetCode解析------111. 二叉树的最小深度-深度优先搜索

    题目: 给定一个二叉树,找出其最小深度. 最小深度是从根节点到最近叶子节点的最短路径上的节点数量. 说明: 叶子节点是指没有子节点的节点. 示例: 给定二叉树 [3,9,20,null,null,15 ...

  10. 【Leetcode】111. 二叉树的最小深度

    一.题目 1.题目描述 给定一个二叉树,找出其最小深度. 最小深度是从根节点到最近叶子节点的最短路径上的节点数量. 说明:叶子节点是指没有子节点的节点. 示例1: 输入:root = [3,9,20, ...

最新文章

  1. Linux程序编译速度提高方法
  2. vue点击图片后复制图片url_简单漂亮的(图床工具)开源图片上传工具——PicGo...
  3. Delphi之virtual,dynamic,abstract
  4. oracle 创建新库时报错:enterprise manager 配置失败
  5. (十七)深入浅出TCPIP之HTTP和HTTPS
  6. Mybatis 与java 类型 对应表
  7. android 崩溃捕获_Android从相机和图库捕获图像
  8. ORACLE中的KEEP()使用方法
  9. CentOS7.9安装教程,以及出现dracut- initqueue timeout-starting…starting timeout scripts 解决办法,linux配置静态IP地址
  10. h5 和 微信小程序添加emoji表情处理
  11. OpenCV在visual studio 2022中的下载与配置
  12. Compilation is not supported for following modules: example, image-viewer. Unfortunately you can't h
  13. 公司到底是怎么看我们的…… 1
  14. vue页面截图;H5页面截图;vue项目中将特定网页内容生成图片(截图);html2canvas截图
  15. camstar自定义function
  16. 如何将360流量监控数据清零 解决方法
  17. Debian配置ssh服务
  18. 主数据管理解决方案(PPT完整版)
  19. 盗销苹果ID成黑色产业链
  20. mysql统计24小时数据

热门文章

  1. CentOS下安装两个或多个Tomcat7
  2. DFS/并查集 Codeforces Round #286 (Div. 2) B - Mr. Kitayuta's Colorful Graph
  3. 应用Rational工具简化基于J2EE项目(五)架构与设计
  4. JavaScript通过style只能获取内联 状态的样式
  5. springboot的使用html页面及css、js路径的配置
  6. serverl sql 数据在哪里找_我是如何在SQLServer中处理每天四亿三千万记录的
  7. java8 时间类型相关类
  8. 变量 重复声明_JS:定义变量的var、let有何操作?(360°无死角)
  9. org.apache.commons.lang.text.StrLookup缺失
  10. [渝粤教育] 陕西国防工业职业技术学院 Android开发 参考 资料