一. B+树索引 (适合高选择性字段,例如性别就是低选择性) 分为聚集索引和辅助索引。聚集索引是根据主键创建的一颗B+树,聚集索引的叶子节点存放了表中的所有记录。 辅助索引是根据索引键创建的一颗B+树,与聚集索引不同的是,其叶子节点存放索引键,以及索引键指向的主键。 注意细节: Cardi...
分类:
数据库 时间:
2015-05-05 12:24:05
阅读次数:
155
问题一 引言 在之前我们讲到过如果保存树根节点到叶子节点之间的路径,其中包含了如何判断一个节点是否是叶子节点,而且用栈保存了路径中的节点,只要遍历一下栈即可,然后用一个深度保存所有遍历深度中的最大值 但仔细想想,这种方法是否过于繁琐,我们其实不需要一个完整的路径,为什么要去用一个栈保留路径呢,我们仅...
分类:
其他好文 时间:
2015-04-30 17:31:12
阅读次数:
156
trie树,是用 树的 多重链表来表示 树的。每个节点 有 d 个指针域。若从键树中的某个节点到叶子节点的路径上每个节点都只有一个孩子,则可以把 路径上的所有节点压缩成一个叶子节点,且在叶子节点中 存储 关键字 以及 根关键字相关的信息。
当节点的度 比较大时,选择 Trie树,要比 双链表树更为合适。
tire树的 数据 压缩 是 挺与众不同的。
下面 给出 具体的 代码:
源代码工程文...
分类:
其他好文 时间:
2015-04-29 13:35:48
阅读次数:
386
杂谈; 打败自己的 往往不是敌人,而是自己。坚持不易,且行且珍惜。
键树 是一种 把 把 非叶子节点 当成索引,叶子节点保存具体信息的一种树。
例如:
它的 键树形式如下:
键树 有 两种 表示 方法:1. 双链表 表示法 ,就是 树的 孩子链表 表示法 2.多重链表表示法(Trie树)
下面给出 键树的 双链表 表示法的 插入,删除,查找 等...
分类:
其他好文 时间:
2015-04-29 10:07:39
阅读次数:
284
题目:输入一颗二元查找树,将该树转换为它的镜像,即在转换后的二元查找树中,左子树的结点都大于
右子树的结点。用递归和循环两种方法完成树的镜像转换。
例如输入:
8
/ 6 10
/\ /5 7 9 11
输出:
8
/ 10 6
/\ /11 9 7 5
思路:这也是一个递归的题目,对于当前节点,如果不是NULL节点或者叶子节点,那么只需要交换左右子节点...
分类:
其他好文 时间:
2015-04-29 09:58:55
阅读次数:
112
本文内容基于An introductory tutoril onkd-trees1.KDTree介绍KDTree根据m维空间中的数据集D构建的二叉树,能加快常用于最近邻查找(在加快k-means算法中有应用)。其节点具有如下属性(对应第5节中的程序实现):非叶子节点(不存储数据):partition...
分类:
编程语言 时间:
2015-04-29 00:37:24
阅读次数:
438
题解:
贪心策略步骤一:
如果有多个儿子,那么显然(这里是真的显然,真的不给证明了)我们肯定要先合并小儿子后合并大儿子。
贪心策略步骤二:
因为所有节点的载重是相同的,所以我们要先合并叶子节点,不能合并就把父亲的权值+1然后叶子就可以去掉啦~(若父亲要被合并上去,那么爷爷就会多出若干被计数为1的儿子)。
证明1:
为什么一定先合并叶子?
因为:
1.如果合并完父亲叶子还能合并,...
分类:
其他好文 时间:
2015-04-27 21:56:40
阅读次数:
138
题目描述:
如果我们把二叉树看成一个图,父子节点之间的连线看成是双向的,我们姑且定义“距离”为两个节点之间的边的个数。写一个程序,求一颗二叉树中相距最远的两个节点之间的距离。
分析与解答:
根据相距最远的两个节点一定是叶子节点这个规律,我们可以进一步讨论。
对于任意一个节点,以该节点为根,假设这个根有K个孩子结点,那么相距最远的两个节点U和V之间的路径与这...
分类:
其他好文 时间:
2015-04-27 15:18:50
阅读次数:
104
题意:找两个叶子节点,使他们之间的路径(边数)最长,返回路径长度。思路:刚看到数据 2 #include 3 #include 4 using namespace std; 5 vector > gra; //树以临接表记录(有向图) 6 int maxsum; 7 int DFS(int...
分类:
其他好文 时间:
2015-04-27 00:22:56
阅读次数:
103
背景:开始自己想了一个贪心思路,结果是错的。其实这个题是哈夫曼树的思想,贪心只是哈夫曼树的证明和构造思想。
哈夫曼树:一种带权最短二叉树(也就是所有叶子节点的权重乘以深度的和最小),在实际中是用来做最高效信息编码的。信息的频率就是权重,一个频率很低的数,它的编码就应该长,树的深度就应该大。实际信息编码会根据信息字符的频率来构建一个哈夫曼树,已达到最高效。
本题和哈夫曼树是一个很好的契合,解决本题...
分类:
其他好文 时间:
2015-04-26 09:15:21
阅读次数:
119