408考研之数据结构的排序——外部排序

本文参考王道视频课以及王道教材,如有侵权即刻删除,仅作学习交流使用。

TIPS:外部排序历年考研次数相对较少,所以可考查的点不是很多;败者树,外部排序的影响和优化因素等情况,历年较少涉及,只在考优化外部排序的时候,与前面知识点多路归并一起考查,考的两年选择题,主要是K路归并的归并段的虚段补充,不排除考查其他知识点,但在复习时间不够的情况下,确实可以稍微忽略该段内容。

前置知识:

1,外存和内存的数据交换以数据块为单位,磁盘数据块中存放着各种数据;

2,磁盘的读写,也是以块为单位,数据读入内存后才能被修改,修改完之后还需写回内存;

外部排序的原因:假设排序一个1个10T级别的数据,无法一次全部读入内存,只能少量多次分批读入;这种情况下就需要把在外部的数据进行排序;

最低级要求:使用归并排序的思想,最低用三个块的大小,即可完成对外存中任意一个大小的文件进行排序,三个块分别是:2个输入缓冲区,1个输出缓冲区;

外部排序的时间开销,占大头的部分为读写外存的时间;

外部排序的步骤:生成r个初始归并段;进行N趟的k路归并;得到:。(   S=[logk r]     )

如何优化外部排序?

最佳归并树:k叉归并的最佳归并树一定是一颗严格k叉树,即树中只有度数为k,0的结点。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值