最大高度

function getMaxHeight(root){if(root == null){return 0;}else{var left = getMaxHeight(root.left);var right = getMaxHeight(root.right);return 1 + Math.max(left,right);}
}

最小高度

function getMinHeight(root){if(root == null){return 0;}else{var left = getMinHeight(root.left);var right = getMinHeight(root.right);return 1 + Math.min(left,right);}
}

二叉树宽度

递归方法

function getMaxWidth(root){if(root == null){return 0;}else if(root.left == null && root.right == null){return 1;}else{return getMaxWidth(root.left) + getMaxWidth(root.right);}
}

非递归方法

function getMaxWidth(root){if(root == null){return 0}var queue = [],maxWidth = 1;queue.push(root);while(true){var levelSize = queue.length;if(levelSize == 0){break;}while(levelSize > 0){var node = queue.shift();levelSize--;if(node.left){queue.push(node.left);}if(node.right){queue.push(node.right);}}maxWidth = Math.max(maxWidth,levelSize);}return maxWidth;
}

转载于:https://www.cnblogs.com/mengff/p/6849701.html

二叉树的最小高度,最大高度(深度)和宽度相关推荐

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

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

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

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

  3. 二叉树的最小深度——递归法、迭代法

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

  4. 树的概念:层次、高度、深度、宽度

    目录 层次 宽度 深度 高度 其中只有层次是树原生的概念,其他都是从树中的结点来的. 层次 从根节点开始算起,根节点算第一层.如图所示的树 第1层:A 第2层:B,C 第3层:D,E,F 第4层:G, ...

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

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

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

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

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

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

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

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

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

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

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

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

最新文章

  1. android.os.NetworkOnMainThreadException异常
  2. Android.mk文件编写
  3. TopN算法与排行榜
  4. GIS宣传片《地理空间信息革命》视频全集
  5. 在Java中使用DES加密解密算法
  6. 【Flink】Flink调优指南
  7. hive与hbase数据类型对应关系
  8. 橘子皮巧治咳嗽痰多 泡茶喝-转
  9. 3.1 tensorflow2实现brown-mood中位数检验法——python实战
  10. python lambda函数详细解析(面试经常遇到)
  11. Oracle中记录被锁解锁方法
  12. 全自动采集程序 php,快看CMS全自动采集影视程序
  13. SQL——查询和1002号的同学学习的课程完全相同的其他同学的学号和姓名
  14. 【笔记】《Federated Learning With Blockchain for Autonomous Vehicles Analysis and Design Challenges》精读笔记
  15. 前端开发:Vue组件中的冒号用法
  16. 云南省科协第十届学术年会在曲靖开幕
  17. pandas取出符合条件的某单元格的值
  18. 货币战争5 读书笔记
  19. JavaWeb 入门级项目实战 -- 文章发布系统 (第六节)
  20. 澳大利亚麦考瑞大学计算机学院王岩教授招2023年入学博士研究生和双学位博士生

热门文章

  1. Node.js获取mac网卡地址
  2. VS 2010测试解读2-给测试用例做标签
  3. javascript笔记:深入分析javascript里对象的创建(上)续篇
  4. 巧解SEP杀毒软件卸载需要密码才能完全卸载问题
  5. 文件服务器结构,文件服务器结构
  6. php phar 无法创建,php composer.phar install 安装问题
  7. DSP与FPGA间简单通信时序
  8. 如何实现良好的隔空操作体验
  9. 各种pytorch项目
  10. kivy中kv语言的变态用法