这是算法理论中的一个简单问题。 它们之间的区别是,在一种情况下,你计算节点的数量,在另一种情况下,计算根节点和具体节点之间最短路径上的边的数量。 哪个是哪个?
当前回答
另一种理解这些概念的方式如下: 深度:在根位置画一条水平线,并将这条线作为地面。所以根结点的深度是0,它所有的子结点都向下增长所以每一层结点的深度都是+ 1。
高度:同样的水平线,但这次地面位置是外部节点,这是树的叶子,向上计数。
其他回答
树的高度和深度是相等的……
但是节点的高度和深度是不相等的,因为…
高度是通过从给定节点遍历到可能最深的叶来计算的。
深度是从根到给定节点.....的遍历计算的
简单的回答是: 深度: 1. 树:从树的根节点到叶节点的边/弧的数量称为树的深度。 2. 节点:从根节点到该节点的边数/弧数称为该节点的深度。
节点深度是指从树的根节点到该节点的路径中存在的边数。
节点的高度是指连接该节点到叶节点的最长路径中存在的边数。
深度:
树中节点的深度是从根节点到该节点的路径长度。树的深度是树中所有节点的最大深度。
高度:
节点的高度是从该节点到树中最深节点的路径长度。树的高度是树中从根节点到最深节点的路径长度。(例如:上面例子中的树的高度是4(计算边,而不是节点))。 只有一个节点的树高度为零。
要了解更多关于树的基础知识,请访问:树的介绍和属性
树的整体深度等于树的高度,树的级别也一样,但如果对于特定的节点高度不等于深度,因为深度的定义表明从根节点到该节点的最长路径,对于高度,它是从该节点到叶节点。
总体树,D=H=L 但D可能不等于H。
推荐文章
- set()是如何实现的?
- 找出质数最快的算法是什么?
- 圆线段碰撞检测算法?
- 求有向图中的所有循环
- JavaScript -从当前日期开始获取一周的第一天
- .Net数据结构:ArrayList, List, HashTable, Dictionary, SortedList, SortedDictionary—速度,内存,以及何时使用每个?
- 如何比较两种颜色的相似/不同
- 为什么std::map被实现为红黑树?
- 缓冲区是什么意思?
- 有效的方法应用多个过滤器的熊猫数据框架或系列
- 实现嵌套字典的最佳方法是什么?
- BASE术语解释
- 哪些是遗传算法/遗传规划解决方案的好例子?
- JavaBean和POJO之间的区别是什么?
- 如何在O(n)中找到长度为n的无序数组中的第k大元素?