B树是否支持随机检索,B+树呢?

作者&投稿:斐卖 (若有异议请与网页底部的电邮联系)
B树和B+树的问题.~

一、B树的起源

B树,最早是由德国计算机科学家Rudolf Bayer等人于1972年在论文 《Organization and Maintenance of Large Ordered Indexes》提出的,不过我去看了看原文,发现作者也没有解释为什么就叫B-trees了,所以把B树的B,简单地解释为Balanced或者Binary都不是特别严谨,也许作者就是取其名字Bayer的首字母命名的也说不定啊……

二、B树长啥样

还是直接看图比较清楚,图中所示,B树事实上是一种平衡的多叉查找树,也就是说最多可以开m个叉(m>=2),我们称之为m阶b树,为了体现本博客的良心之处,不同于其他地方都能看到2阶B树,这里特意画了一棵5阶B树 。

总的来说,m阶B树满足以下条件:
每个节点至多可以拥有m棵子树
根节点,只有至少有2个节点(要么极端情况,就是一棵树就一个根节点,单细胞生物,即是根,也是叶,也是树)
非根非叶的节点至少有的Ceil(m/2)个子树(Ceil表示向上取整,图中5阶B树,每个节点至少有3个子树,也就是至少有3个叉)
非叶节点中的信息包括[n,A0,K1,A1,K2,A2,…,Kn,An],,其中n表示该节点中保存的关键字个数,K为关键字且Ki<Ki+1,A为指向子树根节点的指针
从根到叶子的每一条路径都有相同的长度,也就是说,叶子节在相同的层,并且这些节点不带信息,实际上这些节点就表示找不到指定的值,也就是指向这些节点的指针为空
B树的查询过程和二叉排序树比较类似,从根节点依次比较每个结点,因为每个节点中的关键字和左右子树都是有序的,所以只要比较节点中的关键字,或者沿着指针就能很快地找到指定的关键字,如果查找失败,则会返回叶子节点,即空指针
例如查询图中字母表中的K
从根节点P开始,K的位置在P之前,进入左侧指针
左子树中,依次比较C、F、J、M,发现K在J和M之间
沿着J和M之间的指针,继续访问子树,并依次进行比较,发现第一个关键字K即为指定查找的值
三、Plus版——B+树
作为B树的加强版,B+树与B树的差异在于:
有n棵子树的节点含有n个关键字(也有认为是n-1个关键字)
所有的叶子节点包含了全部的关键字,及指向含这些关键字记录的指针,且叶子节点本身根据关键字自小而大顺序连接
非叶子节点可以看成索引部分,节点中仅含有其子树(根节点)中的最大(或最小)关键字

请点击输入图片描述
B+树的查找过程,与B树类似,只不过查找时,如果在非叶子节点上的关键字等于给定值,并不终止,而是继续沿着指针直到叶子节点位置。因此在B+树,不管查找成功与否,每次查找都是走了一条从根到叶子节点的路径

必须的可以

不对。

B树只适用于随机检索,不适用于顺序检索。

B树事实上是一种平衡的多叉查找树,也就是说最多可以开m个叉(m>=2),我们称之为m阶b树,为了体现本博客的良心之处,不同于其他地方都能看到2阶B树,这里特意画了一棵5阶B树 。

扩展资料:

B+树在节点访问时间远远超过节点内部访问时间的时候,比可作为替代的实现有着实在的优势。这通常在多数节点在次级存储比如硬盘中的时候出现。通过最大化在每个内部节点内的子节点的数目减少树的高度,平衡操作不经常发生,而且效率增加了。这种价值得以确立通常需要每个节点在次级存储中占据完整的磁盘块或近似的大小。

参考资料来源:百度百科-B+树



不对
B树只适用于随机检索,不适用于顺序检索


辽宁科技大学文件检索答案
9 计算机检索的基本程序 :1分析检索课题,2选择检索系统和数据库3确定检索途径和检索词,4构建检索式,5制定并调整检索策略6输出检索结果。10 顺排文档和倒排文档在检索中的作用: 一般地说,信息系统的数据库为了能够实现随机检索,至少包括一个顺排文档和一个倒排文档。顺排文档是将数据库的全部记录...

算法有哪些分类
5.最小树形图 6.网络流 算法 7.匹配算法 (六)动态规划 (七)其他: 1.数值分析 2.加密算法 3.排序 算法 4.检索算法 5.随机化算法

什么是容器
回答:首先,我们必须理解一下,在C++ 中容器被定义为:在数据存储上,有一种对象类型,它可以持有其它对象或指向其它对像的指针,这种对象类型就叫做容器。很简单,容器就是保存其它对象的对象,当然这是一个朴素的理解,这种“对象”还包含了一系列处理“其它对象”的方法,因为这些方法在程序的设计上会经常...

第18题 (2) 分 对线性表进行二分查找时,要求线性表必须( )。 A、以...
必须以顺序方式存储,且数据已按递增或递减顺序排好

有哪些在线考试系统比较好?
批量导题功能,能够帮助用户快速搭建好考试所需的题库;简单一目了然的多层级树状管理体系,一键题库查重功能;自定义题目标签功能,通过题型、作者、标签等筛选题目功能;十大基本题型和支持图片、音频、视频、公示、程序题等。2、高效的考试管理 四步快速高效创建试卷,简单易懂的试卷设置;固定组卷、随...

数据库老师会问哪些问题?
因为B+树节点只有索引,占位更少。在查询的情况下硬盘指针移动更低 哈希表索引是怎么工作的? 哈希表是另外一种你可能看到用作索引的数据结构-这些索引通常被称为哈希索引。使用哈希索引的原因是,在寻找值时哈希表效率极高。所以,如果使用哈希索引,对于比较字符串是否相等的查询能够极快的检索出的值。例如之前我们...

查阅预后研究的文献时检索的主要的设计类型是
随机分组、盲法等措施,并注意研究过程中的偏倚和误差。4、关注研究结论的适用范围:预后研究的结论需要结合研究对象、指标、设计和方法学等多方面因素来进行综合判断。需要注意结论的适用范围、临床意义和推广价值。在实际检索文献时,可以根据所研究的问题和研究对象的特点选择适合的研究设计类型来进行检索。

初二微机考试题
6、在树型目录中,确定一个文件或子目录时,要指明相应的( )A、路径 B、目录名 C、文件名 D、根目录7、对文件的存取方式主要有( )A、顺序和随机 B、索引和随机C、顺序和索引 D、随机和读写8、数据库的数据模型应用最广泛的是( )A、层次模型 B、网络模型C、关系模型 D、对象模型9、( )是CPU能同时...

计算机考试问题
链表不具有的特点是: 可随机访问任一元素 插入和删除不需要移动的元素 不必事先估计存储空间 所需空间与线性表长度成正比 A 在深度为5的满二叉树中叶子结点的个数为: 32 31 16 15 C 对长度为n的线性表进行顺序查找:在最坏情况下所需要的比较次数为: n+l n (n+1)/2 n/2 B 程序流程...

什么是数据挖掘,简述其作用和应用。
数据挖掘是指从大量的数据中通过算法搜索隐藏于其中信息的过程。数据挖掘是指通过大量数据集进行分类的自动化过程,以通过数据分析来识别趋势和模式,建立关系来解决业务问题。换句话说,数据挖掘是从大量的、不完全的、有噪声的、模糊的、随机的数据中提取隐含在其中的、人们事先不知道的,但又是潜在有用...

广水市13363647667: B树是否支持随机检索,B+树呢? -
老融吗丁: 不对. B树只适用于随机检索,不适用于顺序检索. B树事实上是一种平衡的多叉查找树,也就是说最多可以开m个叉(m>=2),我们称之为m阶b树,为了体现本博客的良心之处,不同于其他地方都能看到2阶B树,这里特意画了一棵5阶B树 . 扩展资料: B+树在节点访问时间远远超过节点内部访问时间的时候,比可作为替代的实现有着实在的优势.这通常在多数节点在次级存储比如硬盘中的时候出现.通过最大化在每个内部节点内的子节点的数目减少树的高度,平衡操作不经常发生,而且效率增加了.这种价值得以确立通常需要每个节点在次级存储中占据完整的磁盘块或近似的大小. 参考资料来源:百度百科-B+树

广水市13363647667: 下列关于b树和b+树的叙述中,哪一条是不正确的 -
老融吗丁:[答案] 下列关于B树和B+树的叙述中,哪一条是不正确的? A.B树和B+树都是平衡的多路查找树 B.B树和B+树都是动态索引结构 C.B树和B+树都能有效地支持顺序检索 D.B树和B+树都能有效地支持随机检索 你问的是这道吗?选D

广水市13363647667: 关于B+树的问题 !!!两本书上冲突了 !!!!B+树都能有效的支持随机检索吗?? -
老融吗丁: 你理解是不对的,不支持顺序检索的,不一定就支持随即检索. 链表就支持顺序检索,不需要额外辅助空间来帮助其检索,二叉树就不支持顺序检索,这两个都不支持随即检索.

广水市13363647667: 关于B树和B+树有以下几种叙述,不正确的是() -
老融吗丁: A B、B+树是平衡多叉查找树,常作索引,在文件系统中很有用

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网