1、二叉树
每个结点最多只有两个子树的树结构
2、BST(二叉搜索树或二叉排序树)
- 左子树上所有结点的值均小于它的根结点的值
- 右子树上所有结点的值均大于它的根结点的值
- 左右子树也均为二叉搜索树
3、AVL(平衡二叉树)
- 一颗二叉搜索树
- 左右子树的高度差不超过1
4、红黑树
- 一颗二叉搜索树
- 节点是红色或黑色
- 根结点是黑色
- 所有的叶子都是黑色的(这里的叶子指nil节点)
- 每个红色节点的两个子节点都是黑色(不能有两个连续的红色节点)
- 从任一节点到其每个叶子的所有路径都包含相同数目的黑色节点
上述特性保证了——从根到叶子的最长的可能路径不多于最短的可能路径的两倍长。
5、B树
- 所有的叶子结点都位于同一层(都有相同的高度)
- 所有节点的数据索引是从左到右递增排列
6、B+树
- 非叶子节点不存储data,只存储索引(冗余),可以放更多索引
- 叶子节点包含所有索引字段
- 叶子节点用指针连接,提高区间访问的性能