mysql存储索引的结构,使用的是改造后的B+树,我们看一下,这种数据结构,都包含有哪些特性
一、二叉树特性
别名:BST树, binary search tree
1.1 特性:
左子树节点都比父节点小,右子树节点都比父节点大
1.2 示例
演示网站地址:https://www.cs.usfca.edu/~galles/visualization/BST.html
1.3 优点:
- 使用二分查找(或者叫折半查找)的方式,查找节点比单链表或者数组那样的遍历查找快
- 插入速度快,插入完数据后,不需要像数组那样,挪动大量的数据
二、平衡二叉树特性
别名:AVL树,avl是人名缩写
2.1 相关概念
深度差
从根节点到a个节点,要走过的距离是5,从跟节点走到b节点要走过的距离是3,那么他们之间的深度差就是5-3=2
左旋
把原来的父节点变成左子树节点,把原来的右子树节点变成父节点,让新插入的节点变成右子树节点