• 欢迎来到我的博客
  • B站@技术宅天蓝

标签:数据结构

学习笔记

mysql 联合索引数据结构示意图,最左前缀原理

mysql 联合索引数据结构示意图,最左前缀原理
联合索引示意图 最左前缀原理 通过上图我们可以发现,联合索引和单列索引差不多,只不过联合索引存储的关键字包含了多个列。 最左前缀原理:联合索引的排序是有优先级的,越在左边的列,优先级越高,如上图所示: 会优先按照数字排序,在数字相等时,会根据字母进行排序。 ……继续阅读 »

tianlan 8个月前 (04-17) 153浏览 0评论 0个赞

学习笔记

mysql数据库-MyISAM与InnoDB两个存储引擎的索引实现方式

mysql数据库-MyISAM与InnoDB两个存储引擎的索引实现方式
MyISAM 主键索引(主索引) 辅助索引(Secondary key) 在MyISAM中,主索引和辅助索引(Secondary key)在结构上没有任何区别,只是主索引要求key是唯一的,而辅助索引的key可以重复 InnoDB 主键索引 MyISAM索引文件和数据文件是分离的,索引文件仅保存数据记录的地址。而在InnoDB中,表数据文件本身就是按B+T……继续阅读 »

tianlan 8个月前 (04-16) 178浏览 0评论 1个赞

学习笔记

Mysql 索引原理:B树、B+树、B*树

Mysql 索引原理:B树、B+树、B*树
B树(B-tree) 注意:B-树和B树是同一个东西。 B树和平衡二叉树稍有不同的是,B树属于多叉树又名平衡多路查找树(查找路径不只两个),数据库索引技术里大量使用者B树和B+树的数据结构,让我们来看看他有什么特点。 B树性质 (1)排序方式:所有节点关键字是按递增次序排列,并遵循左小右大原则; (2)子节点数:非叶节点的子节点数>1,且<=M ……继续阅读 »

tianlan 8个月前 (04-14) 181浏览 0评论 0个赞

学习笔记

红黑树(工程二叉树)

红黑树(工程二叉树)
引入 我们提到平衡二叉树是最理想的二叉排序树,性能最好,也最稳定,但是缺点是维护成本高,需要在插入和删除节点时维护新树的平衡性,所以工程实践中,我们倾向于使用另一种二叉排序树 —— 红黑树 定义 红黑树(Red-Black Tree)是每个节点都带有颜色属性的二叉排序(查找)树,具备以下特性: 节点是红色或黑色; 根节点是黑色的; 每个叶子节点都是黑色的空……继续阅读 »

tianlan 8个月前 (04-09) 198浏览 0评论 0个赞

学习笔记

平衡二叉树(AVL)

平衡二叉树(AVL)
引入 如果二叉排序树用不好,就会退化成斜树,实现算法性能退化成了 O(n) 定义 1.首先是二叉排序树 2.平衡二叉树要求每个节点的左子树和右子树的高度差至多等于 1,这个高度(深度)差的值叫做平衡因子 BF,也就是说 BF 的值不能大于1,否则就不是平衡二叉树。 实现原理 和二叉排序树差不多,只不过每次插入元素后,需要检查树的平衡性,如果平衡性遭到破坏,……继续阅读 »

tianlan 8个月前 (04-09) 168浏览 0评论 0个赞

学习笔记

二叉树、二叉排序树

二叉树、二叉排序树
树 几个概念:根节点、兄弟节点、叶子节点(没有子元素、末端节点) 度:节点的子节点数   二叉树 ①普通二叉树 ②满二叉树 ③完全二叉树(和满二叉树相比,只少了点最后一层的右侧叶子节点) 二叉树的基本性质 性质1: 在第 i 层最多有 2i-1 个节点。 性质2: 深度为 k 的二叉树最多有 2k-1 个节点。 性质3: 对于任何一个二叉树,叶……继续阅读 »

tianlan 8个月前 (04-09) 178浏览 0评论 0个赞