- 1、本文档共54页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
011搜索树 - 3
* * 设P是饱和节点,现将带有空指针的新元素e插入到P中,得到一个有m个元素和m+1个孩子的溢出节点。 用下面的序列表示溢出节点(ei是元素,ci是孩子指针): m,c0,(e1,c1),...,(em,cm) 从ed处分开此节点,其中d=「m/2]。 左边的元素保留在P中,右边的元素移到新节点Q中,(ed,Q)被插入到P的父节点中。 新的P和Q的格式为: P:d-1,c0,(e1,c1),...,(ed-1,cd-1) Q:m-d,cd,(ed+1,cd+1),...,(em,cm) 注意P和Q的孩子数量至少是d。 B-树的插入-饱和 Insert(25) 当新元素需要插入到饱和节点中时,饱和节点需要被分开。 7,0,(20,0),(25,0),(30,0),(40,0),(50,0),(60,0),(70,0) 节点从ed处分开此节点, d = ?m/2? =4 P:3,0,(20,0),(25,0),(30,0) Q:3,0,(50,0),(60,0),(70,0) 节点ed插入到父节点中 20 30 40 50 60 70 20 25 30 40 50 60 70 e1 e2 e3 e4 e5 e6 e7 d 20 25 30 50 60 70 e1 e2 ed-1 ed+1 ed+2 em 10 80 * Insert(25) 需要从磁盘中得到根节点及其中间孩子 写回分开的两个节点 写回修改后的根节点 磁盘访问次数一共是5次。 山东大学计算机科学与技术学院 数据结构 第11章 搜索树 * 2-3 树 Insert(44) * 磁盘访问的总次数 Insert(44): 搜索 44 : 3 3个节点被分开( split): 6 (每个节点被分开: 2次写操作 ) 产生一个新的根节点并写回磁盘 : 1 磁盘访问的总次数 : 10 假设: B-树的高度: h s个节点分裂 磁盘访问次数 =h+2s+1 //1:回写新的根节点或插入后没有导致分裂的节点 最多: 3h+1 * * 示例:从空树开始逐个加入关键码建立3阶B_树 * * 山东大学计算机科学与技术学院 数据结构 第11章 搜索树 * 11.4.7 B-树的删除 删除分为两种情况: 被删除元素位于其孩子均为外部节点的节点中(即元素在树叶中)。 被删除元素在非树叶节点中。既可以用左相邻子树中的最大元素,也可以用右相邻子树中的最小元素来替换被删除元素,这样2就转化为1 。 山东大学计算机科学与技术学院 数据结构 第11章 搜索树 * B-树的删除 第1种情况: 从一个包含多于最少数目元素(如果树叶同时是根节点,那么最少元素数目是1,如果不是根节点,则为?m/2? -1 )的树叶中删除一个元素,只需要将修改后的节点写回。 Delete(50) Delete(50) 磁盘访问次数是2(从根到包含50的树叶)+1(写回修改后的树叶)=3。 * B-树的删除 第1种情况: 当被删除元素在一个非根节点中且该节点中的元素数量为最小值时 它的最相邻的兄弟(最相邻的左或右兄弟)有多于最少数目元素,用其最相邻的左或右兄弟中的元素来替换它。 为保持低次数的磁盘访问,只检查最相邻兄弟之中的一个。 Delete(25) Delete(25) 磁盘访问次数是2(从根到包含25的树叶)+1(读取该树叶的最相邻左兄弟)+3(写回修改后的树叶、兄弟和父节点)=6。 * B-树的删除 第1种情况: 当被删除元素在一个非根节点中且该节点中的元素数量为最小值时, (1)它的最相邻的兄弟(最相邻的左或右兄弟)有最少数目元素,将两个兄弟与父节点中介于两个兄弟之间的元素合并成一个节点。 (2)由于两兄弟分别有d-2和d-1个元素,合并后节点共有2d-2个元素。当m是奇数时,2d-2等于m-1;而当m是偶数时,2d-2等于m-2。节点中有足够的空间来容纳这么多元素。 Delete(10) * 磁盘访问次数是3(到达包含被删除元素的树叶)+2(读第二和三层的最相邻右兄弟节点)+4(将第一,二和三 层的4个修改后的节点写回磁盘) 因此总的磁盘访问次数是9次。 * * 最坏情况下,这种过程会一直回溯到根节点。当根节点缺少一个元素时,它变成空节点,将被抛弃,树的高度减1。 B-树的删除 Delete(44) 山东大学计算机科学与技术学院 数据结构 第11章 搜索树 *
您可能关注的文档
- RFID在图书馆的应用第五部分97-03讲述.ppt
- RFID关键组件讲述.ppt
- (邓春)彩盒工艺培训.ppt
- (陈恩锋)竹胶板模板工程施工论文.doc
- Revit小教程讲述.doc
- 八下音乐教案概要.doc
- 八处安全总结概要.ppt
- (通用版)高考化学二轮复习 策略三 回扣教材-重温高考必考的12个课本中的实验 教材实验5 氯气的性质课件.ppt
- (苏教版)2016年秋九年级语文上册配套课件:第五单元借助注释学文言二十岳阳楼记.ppt
- RFID应用方案讲述.doc
- 2024年03月河北日报报业集团(河北日报社)招考聘用22人笔试历年典型考题及考点剖析附答案详解.docx
- 2024年03月安徽省天长市事业单位2024年度公开招聘39名工作人员笔试历年典型考题及考点剖析附答案详解.docx
- 2024年03月江西省泰和县事业单位2024年公开招考18名高层次人才笔试历年典型考题及考点剖析附答案详解.docx
- 2024年03月江苏无锡市滨湖区教育系统招考聘用骨干教师23人笔试历年典型考题及考点剖析附答案详解.docx
- 2024年03月江苏省睢宁县2024年面向应届毕业生公开招聘300名编制教师322笔试历年典型考题及考点剖析附答案详解.docx
- 2024年03月江苏苏州高新区教育系统招考聘用事业编制高层次紧缺型教育人才80人笔试历年典型考题及考点剖析附答案详解.docx
- 2024年03月江苏徐州睢宁县面向2024年毕业生招考聘用编制教师300人笔试历年典型考题及考点剖析附答案详解.docx
- 2024年03月国家药品监督管理局机关服务中心2024年度公开招聘1名工作人员(第一批)笔试历年典型考题及考点剖析附答案详解.docx
- 2024年03月安徽省马鞍山市重点工程建设管理处2024年面向社会公开招考3名编外聘用工作人员笔试历年典型考题及考点剖析附答案详解.docx
- 2024年03月四川省阆中市消防救援大队2024年面向社会招考1名消防文员笔试历年典型考题及考点剖析附答案详解.docx
文档评论(0)