1、AVL 1.基本概念 AVL是平衡二叉查找树,它或者是一颗空树,或者是具有下列性质的二叉树:它的左子树和右子树都是平衡二叉树,且左子树和右子树的深度之差的绝对值不超过1。 若将二叉树结点上的平衡因子BF(Balance Factor)定义为该结点的左子树的深度减去它的右子树的深度,则平衡二叉树上 ...
分类:
其他好文 时间:
2018-05-14 22:04:36
阅读次数:
180
最近刚学了平衡树,然后突发奇想写几篇博客纪念一下,可能由于是刚学的缘故,还有点儿生疏,望大家海涵 说到平衡树,就不得不从基础说起,而基础,正是二叉查找树 什么是二叉查找树?? 大家观察一下下面的这棵二叉树 相信大家一眼就能发现,这棵树从左往右是递增的(也就是右儿子大于左儿子) 那么这样的一棵树有什么 ...
分类:
其他好文 时间:
2018-05-13 01:09:38
阅读次数:
161
B-树就是B树。 问题一:数据库索引为什么要用树结构存储? 树查询快,并且可以保持有序 问题二:为什么索引没有用二叉查找树来实现? 数据库索引是存在磁盘上的, B树是一种多路平衡查找树,它的每一个节点最多包含m个孩子,m称为B树的阶。m的大小取决于磁盘页的大小。 一个m阶的B树具有如下几个特征: 1 ...
分类:
其他好文 时间:
2018-05-11 20:22:07
阅读次数:
128
二叉查找树(BST)具备什么特性呢? 红黑树具备什么特性呢? 保证了从根到叶的最长路径不会超过最短路径的2倍。 如何让树保持红黑色特性:1)变色 2)旋转 红黑树的应用:TreeMap,TreeSet,Java8 ...
分类:
其他好文 时间:
2018-05-11 15:34:58
阅读次数:
136
一.一张2亿条记录的表,假设一条记录有200字节,查询一条记录使用索引和不使用索引的性能计算 1.假设硬盘的IOPS为100 2.索引长度为:10字节(4字节索引+6字节指针长度) 3.每个页大小为16KB,一个页上可存储索引个数为16k 1024/(6+4)=1638.4 4.一个页可存储的数据大 ...
分类:
数据库 时间:
2018-05-11 00:51:34
阅读次数:
241
R-B Tree,全称是Red-Black Tree,又称为“红黑树”,它一种特殊的二叉查找树。红黑树的每个节点上都有存储位表示节点的颜色,可以是红(Red)或黑(Black)。 红黑树的特性: (1)每个节点或者是黑色,或者是红色。 (2)根节点是黑色。 (3)每个叶子节点(NIL)是黑色。 [注 ...
分类:
其他好文 时间:
2018-05-10 11:20:27
阅读次数:
150
二叉树 定义: 来自于百度百科。 在计算机科学中,二叉树是每个节点最多有两个子树的树结构。通常子树被称作“左子树”(left subtree)和“右子树”(right subtree)。二叉树常被用于实现二叉查找树和二叉堆。 二叉树的每个结点至多只有二棵子树(不存在度大于2的结点),二叉树的子树有左 ...
分类:
编程语言 时间:
2018-05-09 14:35:12
阅读次数:
184
一:B-树是一种平衡的多路查找树,它在文件系统中很有用。 定义:一棵m 阶的B-树,或者为空树,或为满足下列特性的m 叉树: ⑴树中每个结点至多有m 棵子树。 ⑵若根结点不是叶子结点,则至少有两棵子树。 ⑶除根结点之外的所有非叶结点至少有[m/2] 棵子树; ⑷所有的非终端结点中包含以下信息数据:( ...
分类:
数据库 时间:
2018-05-09 12:04:06
阅读次数:
162
转自https://www.cnblogs.com/liyuan989/p/4071942.html 前言 红黑树是特殊二叉查找树的一种,一棵红黑树有以下5种性质: 根节点为黑色。 每个节点不是黑色就是红色。 每个红色节点的两个儿子一定是黑色。 所有的叶子节点都是黑色。(注:这里的叶子节点并不是真正 ...
分类:
其他好文 时间:
2018-05-08 12:18:03
阅读次数:
185
算法分类合集 ACM 所有算法 数据结构 栈,队列,链表 哈希表,哈希数组 堆,优先队列双端队列可并堆左偏堆 二叉查找树Treap伸展树 并查集集合计数问题二分图的识别 平衡二叉树 二叉排序树 线段树一维线段树二维线段树 树状数组一维树状数组N维树状数组 字典树 后缀数组,后缀树 块状链表 哈夫曼树 ...
分类:
编程语言 时间:
2018-05-06 01:40:10
阅读次数:
228