一、面试被怼 面试官:你知道文件索引、数据库索引一般用什么数据结构来存储吗? 小秋:知道啊,一般都是用树形结构来存储的。 面试官:可以说说为啥用树形结构来存储吗? 小秋:树形结构例如想 B 树,B+ 树,二叉查找树都是有序的,所以查询效率很高,可以再 O(logn) 的时间复杂度查找到目标数据。 面试官:那可以问问...
一、面试被怼 面试官:你知道文件索引、数据库索引一般用什么数据结构来存储吗? 小秋:知道啊,一般都是用树形结构来存储的。 面试官:可以说说为啥用树形结构来存储吗? 小秋:树形结构例如想 B 树,B+ 树,二叉查找树都是有序的,所以查询效...
2.2 让B树插入和删除操作变得"专业"和"有趣" 🌳🚀 B树是一种非常有趣的数据结构,它拥有强大的插入和删除操作。在接下来的解答中,我们将通过一个精彩的示例来详细介绍B树的插入(insert)和删除(delete)操作。 首先,让我们回顾一下m阶B树的基本特性: 每个节点最多包含m个孩子,其中m满足:ceil(m/2)<=m<=m...
也就是说:B+树中每个非叶节点没有指向某个关键字具体信息的指针,所以每一个节点可以存放更多的关键...
面试题:什么叫B树 B是balanced的意思 是在二叉查找树 树的基础上增加了平衡的性质 导致它不是 二叉树了,变成了多叉树,但是叉几路又有了限制 否则怎么平衡呢 一棵m阶B树(balanced tree of order m)是一棵平衡的m路搜索树。它或者是空树,或者是满足下列性质的树:...
从一道索引数据结构面试题看B树、B+树 题目1: Mysql数据库用过吧?l里面的索引是基于什么数据结构。 答:主要是基于Hash表和B+树 题目2: 很好请你说一下B+树的实现细节是什么样的?B-树和B+树有什么区别?联合索引在B+树中如何存储? 答: 首先,数据库使用树型结构来增加查询效率,并保持有序。那么,为什么不...
平衡二叉树是基于二分法的策略提高数据的查找速度的二叉树的数据结构。 特点 平衡二叉树是采用二分法思维把数据按规则组装成一个树形结构的数据,用这个树形结构的数据减少无关数据的检索,大大的提升了数据检索的速度;平衡二叉树的数据结构组装过程有以下规则:
B-树:平衡多路查找树,一颗度为m的B-树称为m阶B-树。一个节点有k个孩子时,必有k-1个关键字才能将子树中所有关键字划分为k个子集。B-树中所有孩子节点最大值称为B-树的阶,通常用m表示。从查找效率考虑,一般要求m>=3。 B-树满足一下要求:
有一道MySQL的面试题,为什么MySQL的索引要使用B+树而不是其它树形结构?比如B树? 这个问题的复杂版本可以参考本文; 简单回答是: 因为B树不管叶子节点还是非叶子节点,都会保存数据,这样导致在非叶子节点中能保存的指针数量变少(有些资料也称为扇出) 指针少的情况下要保存大量数据,只能增加树的高度,导致IO操作变多,查...
面试题1:MySQL为什么用B+树,而不用B树? 1.b+树只有叶子节点存数据 b树是每个节点都存数据 在相同数据量下b树的高度更高,所以查询效率更低 2.b树每一层存的是数据+索引; b+树是除了叶子节点存的是数据+索引以外,其余节点只存索引,所以在相同数据量的情况下,b树的高度会比b+ 树高很多 ...