b tree 和 b+ tree 的区别

作者&投稿:厉冉 (若有异议请与网页底部的电邮联系)
in the tree 和on the tree的区别~

一、含义不同
on the tree更注重其表面性,常用于修饰果实,树叶,外在的物品或记号;而in the tree侧重内在性,常用于修饰藏于树中的动物或人,或是处于树木内部的巢穴或物品,in the tree也常出现在tree的引申义中。
1、Most of the apples on the tree have ripened.
树上的苹果大多已经成熟。
2、The woodpecker pecked a hole in the tree.
啄木鸟在树上啄了一个洞。
二、侧重点有所不同
物品大都与 “hang”搭配,暗示物品是悬挂在树木的表面。物品的位置是处于树木的内部而非表面。在动作类中,in the tree和on the tree的使用还受到动词本身的影响,如动词land, stand, keep an eye经常与on连用。
1、Their shuttlecock ended up on the tree branch.
他们的羽毛球结果落到树枝上了。
2、The boys carved their names in the tree.
男孩子们把名字刻在树上。
三、对修饰词的不同
它们所修饰的词的词性可包括名词和动词,且名词内可再细分为果实、物品、人及动物等。并且像apple等在特殊情况下也可与 in the tree搭配,而在涉及树木本身的枝叶时,in the tree和on the tree都可与之搭配。

扩展资料
同义词:

一、hang
英 [hæŋ] 美 [hæŋ]
vt.悬挂;(被)绞死;贴,装饰;使悬而未决
vi.悬垂;被吊死;附属,依靠;悬而未决
n.悬挂的样子;(动作的)暂停;〈口〉大意,要点;〈口〉做法,诀窍
See those clouds; how they hang!
看这些云,如何地悬挂在天上!
二、sling
英 [slɪŋ] 美 [slɪŋ]
n.吊索,鞋带;投石器;投掷;[医]悬带
vt.吊起,悬挂;投掷;遣送,押往
She had her arm in a sling.
她的胳臂吊在悬带上。

.B树中同一键值不会出现多次,并且它有可能出现在叶结点,也有可能出现在非叶结点中。而B+树的键一定会出现在叶结点中,并且有可能在非叶结点中也有可能重复出现,以维持B+树的平衡。 2.因为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+树的键一定会出现在叶结点中,并且有可能在非叶结点中也有可能重复出现,以维持B+树的平衡。 2.因为B树键位置不定,且在整个树结构中只出现一次,


昌吉市13173934947: btree和b+tree的区别 -
揣些运泰: B 树是为了磁盘或其它存储设备而设计的一种多叉平衡查找树. 区别:(1)有n棵子树的结点中含有n个关键字; 而B树是n棵子树有n-1个关键字 (2)所有的叶子结点中包含了全部关键字的信息,及指向含有这些关键字记录的指针,且叶子结点本身依关键字的大小自小而大的顺序链接.而B树的叶子节点并没有包括全部需要查找的信息 (3)所有的非终端结点可以看成是索引部分,结点中仅含有其子树根结点中最大(或最小)关键字. 而B 树的非终节点也包含需要查找的有效信息 而且: a.B+-tree的内部结点并没有指向关键字具体信息的指针.因此其内部结点相对B 树更小. b.B+-tree查询效率更加稳定

昌吉市13173934947: btree和b+tree的区别是什么?
揣些运泰: B树中同一键值不会出现多次,并且它有可能出现在叶结点,也有可能出现在非叶结点中

昌吉市13173934947: b tree 和 b+tree的区别 -
揣些运泰: .B树中同一键值不会出现多次,并且它有可能出现在叶结点,也有可能出现在非叶结点中.而B+树的键一定会出现在叶结点中,并且有可能在非叶结点中也有可能重复出现,以维持B+树的平衡. 2.因为B树键位置不定,且在整个树结构中只出现一次,

昌吉市13173934947: 比较b - tree索引和bit - wise索引技术的区别,各自适用的场合 -
揣些运泰: 一.B-Tree索引:1. 选项择索引字段的原则:l 在WHERE子句中最频繁使用的字段l 联接语句中的联接字段l 选择高选择性的字段(如果很少的字段拥有相同值,即有很多独特值,则选择性很好)l ORACLE在UNIQUE和主键字段上自动建立索...

昌吉市13173934947: MySQL Hash索引和B - Tree索引的区别 -
揣些运泰: 导读 在MySQL里常用的索引数据结构有B+树索引和哈希索引两种,我们来看下这两种索引数据结构的区别及其不同的应用建议.二者区别 备注:先说下,在MySQL文档里,实际上是把B+树索引写成了BTREE,例如像下面这样的写法:...

昌吉市13173934947: 数据结构里 B - 树和B+树怎么读呀? -
揣些运泰:[答案] 都是B树的变种,我们老师和我们都这么叫: B-:必减树 B+:必加树 B*:必星树

昌吉市13173934947: B - tree的B+树 -
揣些运泰: 另外还有一种与此类似的树结构叫B+树,像 Berkerly DB , sqlite , mysql 数据库都使用了B+树算法处理索引.B+和B-(即B)是因为每个结点上的关键字不同.一个多一个,一个少一个.对于B+树,其结点结构与B-tree相同,不同的是各结点的...

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

昌吉市13173934947: MySQL B+树索引和哈希索引的区别 -
揣些运泰: MySQL B+树索引和哈希索引的区别 在MySQL里常用的索引数据结构有B+树索引和哈希索引两种,我们来看下这两种索引数据结构的区别及其不同的应用建议.二者区别 备注:先说下, 在MySQL文档里,实际上是把B+树索引写成了BTREE ,例如像下面这样的写法:CREATE TABLE t( aid int unsigned not null auto_increment,userid int unsigned not null default 0,username varchar(20) not null default '',detail varchar(255) not null default ''

昌吉市13173934947: B - tree的B+树是什么?
揣些运泰: 而B+树的键一定会出现在叶结点中,并且有可能在非叶结点中也有可能重复出现,以维持B+树的平衡

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