b树
- 为了磁盘存储持久化设计的一种多叉平衡查找树
- m阶的b树满足以下条件
- 每个节点最多m个子节点
- 非叶子节点至少由m/2个子节点
- 所有节点都存储数据
b+树
- 相对于b树:
- 叶子节点相连
- 只有叶子节点存储数据,其他节点只存储索引
- 好处
- 深度低一点,非叶子节点不存储数据,单次读取可以读出更多索引信息,降低io的次数
- 查询效率稳定
- 方便遍历数据,叶子节点相连方便范围查找
红黑树
一种自平衡的二叉查找树,经常用在内存中,结构维护起来更加方便,读取略逊于avl,但是可维护性远远强于avl
- 规则
- 根节点是黑色的,叶节点是黑色的
- 红色节点的儿子都是黑色的
- 任一节点到其叶节点树尾端nil指针的每一条路径都包含相同数量的黑色节点。
- 保证了插入和删除的最坏时间复杂度是O(log N)
笔试题 第一题 leetcode.cn/problems/pa… 第二题 blog.csdn.net/weixin_4266… 第三题 思路有错误 这样写算法会漏选 删除之后的新矩阵的[0][0]不能是 0