网站大量收购独家精品文档,联系QQ:2885784924

数据结构第九章.pptVIP

  1. 1、本文档共56页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构 主要讨论的问题:静态查找;动态查找;哈希查找. .树中每一个分支结点表示一个索引块,它最多存放 m 个索引项,每个索引项分别给出各子树结点 (低一级索引块) 的最大关键码和结点地址. .树的叶结点中各索引项给出在数据表中存放的对象的关键码和存放地址.这种m叉树用来作为多级索引,就是m路有哪些信誉好的足球投注网站树. . m路有哪些信誉好的足球投注网站树可能是静态索引结构,即结构在初始创建,数据装入时就已经定型,在整个运行期间,树的结构不发生变化. . m路有哪些信誉好的足球投注网站树还可能是动态索引结构,即在整个系统运行期间,树的结构随数据的增删及时调整,以保持最佳的有哪些信誉好的足球投注网站效率. 多级索引结构形成 m 路有哪些信誉好的足球投注网站树 .动态的 m 路有哪些信誉好的足球投注网站树 .一般定义为: .一棵 m 路有哪些信誉好的足球投注网站树, 它或者是一棵空树, 或者是满足如下性质的树: 根最多有 m 棵子树, 并具有如下的结构: n, P0, ( K1, P1 ), ( K2, P2 ), ……, ( Kn, Pn ) 其中,Pi 是指向子树的指针,0 ? i ? n m;Ki 是关键码,1 ? i ? n m. Ki Ki+1, 1 ? i n. .在子树 Pi 中所有的关键码都小于 Ki+1,且大于 Ki,0 i n. .在子树 Pn 中所有的关键码都大于Kn. .在子树 P0 中的所有关键码都小于 K1. .子树 Pi 也是 m 路有哪些信誉好的足球投注网站树,0 ? i ? n. .一棵3路有哪些信誉好的足球投注网站树的示例 . AVL树是m=?路有哪些信誉好的足球投注网站树? .B-树 .一棵 m 阶B_树是一棵 m 路有哪些信誉好的足球投注网站树,它或者是空树,或者是满足下列性质的树: .根结点至少有 2 个子女. .除根结点以外的所有结点 (不包括失败结点)至少有 ?m/2? 个子女. .所有的失败结点都位于同一层. .事实上,在B-树的每个结点中还包含有一组指针D[m],指向实际对象的存放地址.K[i]与D[i] (1 ? i ? n m)形成一个索引项(K[i], D[i]).通过K[i]可找到某个对象的存储地址D[i]. .非B-树与B-树的示例图 非B-树 B-树 .B-树上的有哪些信誉好的足球投注网站 .B-树的有哪些信誉好的足球投注网站过程是一个在结点内有哪些信誉好的足球投注网站和循某一条路径向下一层有哪些信誉好的足球投注网站交替进行的过程.因此,B-树的有哪些信誉好的足球投注网站时间与B-树的阶数m和B-树的高度h直接有关,必须加以权衡. .在B-树上进行有哪些信誉好的足球投注网站,有哪些信誉好的足球投注网站成功所需的时间取决于关键码所在的层次,有哪些信誉好的足球投注网站不成功所需的时间取决于树的高度. .在B-树上有哪些信誉好的足球投注网站的示例 .B-树上的插入 . B-树是从空树起,逐个插入关键码而生成的. .在B-树,每个非失败结点的关键码个数都在 [ ?m/2? -1, m-1] 之间. .插入在某个叶结点开始.如果在关键码插入后结点中的关键码个数超出了上界 m-1,则结点需要“分裂”,否则可以直接插入. . 实现“分裂”的原则 .设结点 p 中已经有 m-1个关键码,当再插入一个关键码后结点中的状态为: . ( m, P0, K1, P1, K2, P2, ……, Km, Pm) 其中 Ki Ki+1, 1 ? i m 这时必须把结点 p分裂成两个结点 p和q,它们包含的信息分别为: 结点 p: ( ?m/2? -1, P0, K1, P1, ……, K?m/2? -1, P?m/2? -1) 结点 q: (m - ?m/2?, P?m/2?, K?m/2?+1, P?m/2?+1, ……, Km, Pm) 位于中间的关键码 K?m/2? 与指向新结点 q 的指针形成一个二元组 ( K?m/2?, q ),插入到这两个结点的双亲结点中去. 结点“分裂”的示例 . B-树上的插入示例: 从空树开始逐个加入关键码53,75,139,49,145,36,101建立3阶B-树. .若设B-树的高度为h.那么在自顶向下有哪些信誉好的足球投注网站到叶结点的过程中需要进行h次读盘. .在插入新关键码时,需要自底向上分裂结点,最坏情况下从被插关键码所在叶结点到根的路径上的所有结点都要分裂. .B-树上的删除 .在B-树上删除一个关键码时,首先需要找到这个关键码所在的结点,从中删去这个关键码. .若该结点不是叶结点,且被删关键码为 Ki,1 ? i ? n,则在删去该关键码之后,应以该结点 Pi 所指示子树中的最小关键码x来代替被删关键码 Ki 所在的位置,然后在x所在的叶结点中删除 x. .在叶结点上删除有4种情况: 1)被删关键码所在叶结点同时又是根结点且删除前该结点中关键码个数 n ? 2,则直接删去该关键码并将修改后的结点写回磁盘. 2)被删关键码所在叶结点不是根结点且删除前该结点中关键码个数 n ? ?m/2?,则直接删去该关键码并将修改后的结点写

文档评论(0)

jdy261842 + 关注
实名认证
文档贡献者

分享好文档!

1亿VIP精品文档

相关文档