B-树关键字个数计算

@(算法学习)

(2014.9)在一棵具有15个关键字的4阶B-树中,含关键字的结点个数最多是:D个。
A. 5 B. 6 C. 10 D. 15

根据m阶**B-**树定义,

  • 根结点至多有m棵子树,即至多有m-1个关键字
  • 若根结点不是终端结点,则至少有2棵子树
  • 除根以外的所有非叶结点至少有⌈m2⌉\lceil \frac{m}{2}\rceil⌈2m​⌉棵子树,即至少含有⌈m2⌉−1\lceil \frac{m}{2}\rceil - 1⌈2m​⌉−1个关键字

⌈42⌉−1=1\lceil \frac{4}{2}\rceil - 1 = 1⌈24​⌉−1=1
因此,根据题干,只需要满足根结点有1个关键字。非叶结点至少1个关键字,即,一个结点一个关键字时,结点数最多,最多为15个结点。

也就是说,4阶B-树,不必非要有3个关键字的结点。这是我之前理解的误区。

update:更新一个错误,B-树,读作“B减”树。
20190506 update: 更新一个错误,B-树,读作“B"树,不是B减树。感谢@
lln_123指正。

2019.10 Update:

第一届PAT算法直播课培训班招募帖,欢迎点击查看详情、

END.

B-树关键字个数计算相关推荐

  1. 高度为5的3阶b树含有的关键字个数_数据结构要考得好,你心里要有B树

    01 知识框架 02 知识点详解 1 B树 ①定义与性质 B树也叫B-树.B树是一种平衡的多分树,通常我们说m阶的B树,是二叉排序树的一种扩展,它必须满足如下条件: 01 每个结点最多只有m-1个关键 ...

  2. 高度为5的3阶b树含有的关键字个数_B-树和B+树的应用:数据搜索和数据库索引...

    B-树 1 .B-树定义:有序数组+平衡多叉树 B-树是一种平衡的多路查找树,它在文件系统中很有用. 定义:一棵m 阶的B-树,或者为空树,或为满足下列特性的m 叉树: ⑴树中每个结点至多有m 棵子树 ...

  3. MySQL之InnoDB主键索引的B+树的高度计算

    文章目录 MySQL之InnoDB主键索引的B+树的高度计算 1.高度为2和3.主键bigint类型.一行记录数据大小1k MySQL之InnoDB主键索引的B+树的高度计算 1.高度为2和3.主键b ...

  4. R语言使用caret包构建随机森林模型(random forest)构建回归模型、通过method参数指定算法名称、通过ntree参数指定随机森林中树的个数

    R语言使用caret包构建随机森林模型(random forest)构建回归模型.通过method参数指定算法名称.通过ntree参数指定随机森林中树的个数 目录

  5. Java实现若干个数计算平均值并保留小数位 java计算平均值 java四舍五入保留小数

    Java实现若干个数计算平均值并保留小数位 java计算平均值 java四舍五入保留小数 一.需求 1.在项目中,要计算若干个指标的平均值,找了一圈,发现JDK中没有提供,于是乎,造一个. 2.因若干 ...

  6. B-树叶子个数和关键字个数间关系推导

    感谢轻松鼠的提问,发现自己文章的错误之处,已修改. 复习数据结构B-树时,N个关键字的B-树有N+1个叶子结点.自己不能一下子得到该结论,故记录自己的推导过程以便回忆,希望帮助有同样疑惑的同学. B- ...

  7. 1624 Violet 5 樱花(Bzoj2721 LOJ10202 LUOGU1445 提高+/省选-) 交叉相乘 阶乘质因数分解技巧 约数个数计算

    总目录 在线测评地址(ybt) 在线测评地址(LOJ) 在线测评地址(LUOGU) 1.交叉相乘 阶乘质因数分解技巧 约数个数计算 ybt 通过 测试点 结果 内存 时间 测试点1 答案正确 604K ...

  8. 【Java数据结构】BST树(二叉搜索树)总结03(求BST树高度,求BST树节点个数)

    二叉树总结:入口 二叉树的基本操作: 1.插入,删除 操作 2.前.中.后序遍历,层序遍历 3.求BST树高度,求BST树节点个数 4.返回中序遍历第k个节点的值 5.判断一个二叉树是否是BST树,判 ...

  9. 高度为5的3阶b树含有的关键字个数_第15期:索引设计(索引组织方式 B+ 树)

    谈到索引,大家并不陌生.索引本身是一种数据结构,存在的目的主要是为了缩短数据检索的时间,最大程度减少磁盘 IO. 任何有数据的场景几乎都有索引,比如手机通讯录.文件系统(ext4xfsntfs).数据 ...

最新文章

  1. 什么是条件组合覆盖_物史政组合分析,新高考最终受益者丨选科17期
  2. Ceph分层存储分析
  3. silverlight元素FrameworkElement.LayoutUpdated布局变化事件
  4. 【Python】KNN简单的判别预测
  5. 《Java编程思想》10.6 匿名内部类奇怪的代码
  6. springboot使用@Scheduled作定时任务详细用法
  7. 买到假芯片,血的教训!
  8. Java高级语法笔记-异常中finally的使用
  9. 随想录(再论内存屏障)
  10. Excel2013的PowerView报表
  11. 如何让BERT具有文本生成能力
  12. 洛谷P1005 矩阵取数游戏
  13. JavaScript基础知识-JS数据类型
  14. Unity 使用Socket 简单实现通讯
  15. 中学计算机课小课题,中学信息技术课题题目
  16. LabVIEW进制转换总结
  17. 阿里妈妈一面简历面-半小时直接挂
  18. 查看获取MD5和SHA1值(应用签名)*
  19. django 配置swagger 以及登录登出,以及自定义参数
  20. CAP里面的CP和AP

热门文章

  1. 【OpenCV】IplImage和char *的相互转换,以及极易忽视的细节
  2. java 维文生成图片_维文、哈萨克文、柯尔克孜文检测 (java实现把UTF-8转为unicode)...
  3. C++ Licence认证用于项目开发和设备认证
  4. jasper s java jacal_Jasper's Java Jacal
  5. vscode设置网页的域名_微博图床不能用了?教你在VSCODE中如何使用腾讯图床
  6. vue click事件传参数_Vue框架之各种指令的使用
  7. python操作mysql事务提交_python关于Mysql操作
  8. scala数据类型_Scala数据类型示例教程
  9. python round_python round()
  10. Python Gensim Word2Vec