- 1、本文档共75页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
chap11外部排序
第 11 章 外部排序 1. 外存信息的存取 1. 外存信息的存取 1. 外存信息的存取 1、外存信息的存取 1、外存信息的存取 11.3 多路平衡归并的实现 11.3 多路平衡归并的实现 11.3 多路平衡归并的实现 11.3 多路平衡归并的实现 11.3 多路平衡归并的实现 11.3 多路平衡归并的实现 4、置换-选择排序 4、置换-选择排序 4、置换-选择排序 4、置换-选择排序 4、置换-选择排序 4、置换-选择排序 5、最佳归并树 5、最佳归并树 5、最佳归并树 void Construct_Loser(LoserTree ls, WorkArea wa) { for(i=0; iw; ++i) wa[i].rnum=wa[i].key=ls[i]=0; for(i=w-1; i=0; - -i) { fread(wa[i].rec, sizeof(struct RcdType), 1, fi); wa[i].key=wa[i].rec.key; wa[i].rnum=1; Select_MiniMax(ls, wa, i); }//end for }//Construct_Loser 3 2 1 4 5、败者树实现置换-选择排序 5 2 29 0 1 0 51, 49, 39, 46, 38, 29, 14, 61, 15 46 1 39 1 49 1 51 1 29 1 38 1 5 4 3 3 2 0 4 5、败者树实现置换-选择排序 5 2 29 38 0 1 1 51, 49, 39, 46, 38, 29, 14, 61, 15 46 1 39 1 49 1 51 1 14 2 38 1 5 4 3 1 2 0 4 5、败者树实现置换-选择排序 5 2 29 38 39 0 1 3 51, 49, 39, 46, 38, 29, 14, 61,15 46 1 39 1 49 1 51 1 14 2 61 1 5 4 3 1 2 0 4 5、败者树实现置换-选择排序 5 3 29 38 39 46 0 1 2 51, 49, 39, 46, 38, 29, 14, 61, 15 46 1 15 2 49 1 51 1 14 2 61 1 5 4 3 注意:在全部的段号标志变成 2之后,合并段 1的记录已全部生成。 K 值越大越好吗? 1、最佳归并树 起因:由于初始归并段通常不等长,进行归并时,长度不同的初始归并段归并的顺序不同,读写外存的总次数也不同。 目的:减少读写外存的次数。 例:假定由置换-选择分类法生成了 9 个初始归并段,记录数分别为 9、30、12、18、3、17、2、6、24 。如果进行 3-路归并,请讨论在各种情况下的对外存的读写次数。 30 12 9 3 17 18 6 24 2 51 38 32 121 从外存读 121 个记录 写入外存 121 个记录 从外存读 121 个记录 写入外存 121 个记录 A. 总共读写外存 484 个记录 1、最佳归并树 6 2 3 9 24 17 18 30 11 32 59 121 从外存读 11 个记录 写入外存 11 个记录 从外存读 91个记录 写入外存 121 个记录 B. 写入外存 91 个记录 从外存读 121 个记录 12 总共读写外存 446 个记录 3 2 6 9 24 17 18 12 5 20 47 91 C. 总共读写外存 326 个记录 按照 HUFFMAN 树的思想,记录少的段最先合并。不够时增加虚段。如下例所示。 从外存读 5个记录 写入外存 5 个记录 从外存读 91个记录 写入外存 67 个记录 写入外存 91 个记录 从外存读 67个记录 实例:输入文件FI中记录关键字为:51、49、39、46、38、29、14、61、15、30、1、48、52、3、63、27、4、13、89、24、46、58、33、76,假定使用的内存可容纳 6 个记录,利用置换-选择分类法产生初始合并段。 51 49 39 46 38 29 14 61 15 30 1 48 52 3 63 27 4 13 89 24 46 58 33 76 FI 51 49 39 46 38 14 WA 29 FO 实例:输入文件FI中记录关键字为:51、49、39、46、38、29、14、61、15、30、1、48、52、3、63、27、4、13、89、24、46、58、33、76,假定使用的内存可
您可能关注的文档
- 8086指令.doc
- 第二章_孔与轴的极限与配合(有习题的).ppt
- html第五章.ppt
- 一。传统文化。坛 山 街 道 南 关 小 学.doc
- 汇编语言指令集2009.doc
- 03CSS+DIV.ppt
- 关于一、数据传送指令.doc
- 微机原理第02章4.ppt
- 第2.3章:指令集.ppt
- 2010邗江中学高一新生分班英语试卷和答案.doc
- Unit 6 Get Close to Nauture Lesson 22 -课件-2025-2026学年度北京版英语四年级上册.pptx
- Unit 7 Be Together Lesson 23 -课件-2025-2026学年度北京版英语四年级上册.pptx
- 2025食品饮料行业AI转型白皮书-2025食品饮料行业数智化转型领先实践.pdf
- Unit 7 Be Together Lesson 24 -课件-2025-2026学年度北京版英语四年级上册.pptx
- Unit 7 Be Together Lesson 25 -课件-2025-2026学年度北京版英语四年级上册.pptx
- Unit 7 Be Together Lesson 26 -课件-2025-2026学年度北京版英语四年级上册.pptx
- 2025年广州体育职业技术学院单招职业倾向性考试题库完美版.docx
- 软件公司员工考勤异常处理.doc
- 2025年土地登记代理人之土地登记相关法律知识题库500道及完整答案【有一套】.docx
- 2025年四平职业大学单招职业适应性考试题库含答案.docx
最近下载
- 深入贯彻中央八项规定精神学习教育知识测试题库(含答案)_可搜索.pdf VIP
- 飞行控制系统(FCS)系列:Honeywell Primus Epic_(5).自动飞行控制功能.docx VIP
- 瘦终端thinos安装使用手册.pdf VIP
- 飞行控制系统(FCS)系列:Honeywell Primus Epic_(8).飞行仪表显示与界面.docx VIP
- 施工升降机拆除作业安全技术交底完整版.doc VIP
- 《脑淀粉样血管病》课件 .ppt VIP
- 飞行控制系统(FCS)系列:Honeywell Primus Epic_(12).安全与合规性要求.docx VIP
- 雕塑艺术行业发展预测分析.docx
- 新员工三级安全培训考试试题(含答案).docx VIP
- 高中新教材历史选择性必修一课件单元整合.pptx VIP
文档评论(0)