都从1开始计数。 高度从下往上数。 深度从上往下数。 对于整棵树来说,最深的叶结点的深度就是树的深度;树根的高度就是树的高度。这样树的高度和深度是相等的。 对于树中相同深度的每个结点来说,它们的高度不一定相同,这取决于每个结点下面的叶结点的深度。 ...
分类:
其他好文 时间:
2017-06-26 18:04:29
阅读次数:
116
我们知道,树类型作为数据结构中的重要一员,树的很多实现都是来自递归。本文想要实现的就是在桌面客户端项目开发中,经常用到的树结构(.Net平台下有个控件为TreeView)。事实上,我们可能因业务需求自行定义一个树类型的数据结构。 接下来,首先给出我一开始用来获取树的深度的算法实现(存在欠缺) pri ...
分类:
编程语言 时间:
2017-06-22 17:42:29
阅读次数:
195
★ 输入文件:eko.in 输出文件:eko.out 简单对比 时间限制:1 s 内存限制:256 MB 【题目描述】 N棵树,每棵都有一个整数高度。有一个木头的总需要量M。 现在确定一个最大的统一的砍树高度H,如果某棵树的高度大于H,则高出的部分被砍下。使得所有被砍下的木材长度之和达到M(允许稍超 ...
分类:
其他好文 时间:
2017-06-18 17:25:03
阅读次数:
282
需要记忆的部分: 对于二叉树问题,首先需要熟练记住二叉树的前序中序遍历的递归版本和迭代版本,后序也可以看一下,记住BFS的实现过程,归并排序,快速排序,二叉搜索树BST。 总结: 1)二叉树问题基本都是考察递归,几乎所有的二叉树问题时间复杂度都是O(N),空间复杂度和二叉树的高度有关系,因为每一次递 ...
分类:
其他好文 时间:
2017-06-17 18:21:31
阅读次数:
129
1. 概述 AVL树是最早提出的自平衡二叉树,在AVL树中任何节点的两个子树的高度最大差别为一,所以它也被称为高度平衡树。AVL树得名于它的发明者G.M. Adelson-Velsky和E.M. Landis。AVL树种查找、插入和删除在平均和最坏情况下都是O(log n),增加和删除可能需要通过一 ...
分类:
其他好文 时间:
2017-06-13 16:49:11
阅读次数:
192
-------------------siwuxie095 二叉搜索树的局限性 二叉搜索树在时间性能上是具有局限性的 同样的数据,可以对应不同的二叉搜索树,如下: 二叉搜索树可能退化成链表,相应的,二叉搜索树的查找操作是和这棵树 的高度相关的,而此时这颗树的高度就是这颗树的节点数 n,同时二叉搜 索... ...
分类:
其他好文 时间:
2017-06-11 10:18:21
阅读次数:
163
最近学习了二叉搜索树中的AVL树,特在此写一篇博客小结。 1.引言 对于二叉搜索树而言,其插入查找删除等性能直接和树的高度有关,因此我们发明了平衡二叉搜索树。在计算机科学中,AVL树是最先发明的自平衡二叉搜索树。在AVL树中任何节点的两个子树的高度最大差别为一,所以它也被称为高度平衡树。对于N个节点 ...
分类:
编程语言 时间:
2017-06-11 10:05:11
阅读次数:
287
题目描述 教主有着一个环形的花园,他想在花园周围均匀地种上n棵树,但是教主花园的土壤很特别,每个位置适合种的树都不一样,一些树可能会因为不适合这个位置的土壤而损失观赏价值。 教主最喜欢3种树,这3种树的高度分别为10,20,30。教主希望这一圈树种得有层次感,所以任何一个位置的树要比它相邻的两棵树的 ...
分类:
其他好文 时间:
2017-06-10 23:37:38
阅读次数:
321
【NOI2015】荷马史诗 链接:http://uoj.ac/problem/130 因为不能有前缀关系,所以单词均为叶子节点,就是K叉哈夫曼树。第一问直接求解,第二问即第二关键字为树的高度。 ...
分类:
其他好文 时间:
2017-06-04 19:58:16
阅读次数:
222
推断的思路非常easy。若一棵树是平衡二叉树,它的左右子树都是平衡二叉树,而且左右子树的高度差小于等于1。注意。实现的时候,推断左右子树的平衡性时。能够顺便计算子树高度,不用再另外计算一次。以下是其递归实现: #include <iostream> using namespace std; stru ...
分类:
其他好文 时间:
2017-05-22 20:09:01
阅读次数:
129