最新十章节外部排序精品课件.ppt
《最新十章节外部排序精品课件.ppt》由会员分享,可在线阅读,更多相关《最新十章节外部排序精品课件.ppt(27页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、十章节外部排序十章节外部排序p外存信息的存取p外部排序的基本方法归并排序法p多路平衡归并p置换-选择排序 6 8 6 8 9 8 9 6 8 90 9 15 8 90 10 9 20 6 8 12 10 9 20 15 8 12 10 9 20 6 8 12 90 10 9 20 15 8 12 90 14 22 24 15 16 17 92 14 22 24 25 16 17 92 26 38 30 25 50 18 97 26 38 30 50 18 97 7路合并胜者树路合并胜者树 重构后的胜者树重构后的胜者树 重构胜者树时,从根结点至新补入记录的叶结点的重构胜者树时,从根结点至新补入记
2、录的叶结点的路径上的所有结点都必须更新。路径上的所有结点都必须更新。 5 2 2 0 4 0 1 3 6 90 1 3 6 90 10 9 20 6 8 12 10 9 20 15 8 12 10 9 20 6 8 12 90 10 9 20 15 8 12 90 14 22 24 15 16 11 92 14 22 24 25 16 11 92 26 38 30 25 50 18 97 26 38 30 50 18 97 7路合并败者树 重构后的败者树败者树的特点:记录败者,胜者参加下一轮比赛 败者树的优点:重构时修改结点较少01 2 3 4 5 64ls05ls01 2 3 4 5 60
3、4 5 2 0 1 3 6 90 0 10 9 20 6 8 12 1 2 3 4 5 6调整败者树的方法: 将新补充的结点与其双亲结点比较, 败者留在该双亲结点,胜者继续向上直至树根的双亲以在b4补充15为例154与3比较4与2比较42与5比较25 7 7 7 7 7 7 7 90 0 10 9 20 6 8 12 1 2 3 4 5 6k-路归并对内存的要求路归并对内存的要求 至少要有k个输入缓冲区和一个输出缓冲区建败者树的过程7 -1初始化败者树调整b66调整b55调整b44调整b334调整b22调整b1124调整b0054数据结构数据结构 (依据:败者树为完全二叉树)p主:b0. k
4、b0. k-1k个叶结点 ,存放k个输入归并段中当前 参加归并的记录(缓冲区) bk虚拟记录,该关键字取可能的最小值minkeyp辅:ls0. k-1 不含叶结点的败者树 存放最后胜出的编号(ls0)以及所记录的败者编号处理步骤处理步骤p建败者树ls0. k-1p重复下列操作直至k路归并完毕n将将bls0写至输出归并段写至输出归并段n补充记录补充记录(某归并段变空时某归并段变空时,补补 ),调整败者树,调整败者树void CreateLoserTree() bk = MINKEY; for (i = 0; i = 0; i+) Adjust(i);void Adjust(int s) for
5、(t = (s + k) / 2; t 0; t /= 2) if (bs blst) s lst; ls0 = s;void K_Merge() for (i = 0; i k; i+) input(i); /* 第i路输入一个元素到bi */ CreateLoserTree(ls); while (bls0 != MAXKEY) q = ls0; output(bq); input(q); Adjust(q); 置 换 - 选 择 排 序目标目标 扩大初始归并段长度,突破内存工作区容量(设w个记录)的限制。置换置换-选择排序原理选择排序原理 内存 外存 原始文件 内存工作区 FI WA 初
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新 章节 外部 排序 精品 课件
限制150内