外部排序数据结构.ppt
《外部排序数据结构.ppt》由会员分享,可在线阅读,更多相关《外部排序数据结构.ppt(21页珍藏版)》请在课桌文档上搜索。
1、外部排序,本章内容,外存信息的存取外部排序的方法多路平衡归并,外存信息存取,外存储器类型:1、顺序存取的设备(磁带)2、随机存取的设备(磁盘),磁带的信息存取,磁带工作原理:将磁带盘放在磁带机上,驱动器控制磁带盘转动,带动磁带向前移动,通过读/写头就可以向读出或写入信息。磁带信息存贮可记下各种文字信息和二进制信息,按字符组存放,而不是按字符存放。读写的启动停止:磁带不是连续运转的设备,由于读/写需要稳定时进行,因此当启动/停止时,需要一个加速/减速的过程,这个过程磁带不写入任何内容,因而相邻的两个字符组之间要留一个空白,叫做间隙,磁带读写一块信息所需的时间,所需时间由两部分组成:Ti/o=ta
2、+ntwta为延迟时间,即读写头到传输信息所在的物理块的起始位置所需的时间tw为传输一个一个字符所需的时间特点:查找速度慢,检索和修改信息不方便,主要用于处理变化小,只进行顺序存取的大量数据,磁盘信息的存取,磁盘信息的存取磁盘是一种直接存取的存储设备磁盘读写块所需的时间组成:Ti/o=tseek+ta+n*twm tseek:读写头定位的时间 ta:等待信息快的初始位置转到读写头下的时间 twm:传输时间,外部排序的应用对象保存在外存储器上的信息量很大的数据记录文件。外排序与内排序的差别内部排序充分利用内存可以随机存取的特点,如希尔排序中,相隔di的记录关键字可作比较;堆排序中,完全二叉树中父
3、Ri与子R2i,R2i+1可比快速排序中,需正向和逆向访问记录序列外存信息的定位和存取受其物理特性的限制外部排序的实现手段在排序过程中,进行多次内外存之间的数据交换,外部排序的特点,外部排序的方法,由两个独立的阶段组成将外存含n个记录的文件分成若干长度为l的子文件或段,依次读入内存并用内部排序方法排序,将排序后的有序子文件重新写入外存,称为归并段或顺串对这些归并段进行逐趟归并,(有序子文件)由小变大,直到获得整个有序文件,外排序基本方法:归并排序,步骤生成若干初始归并串/顺串(文件预处理)把含有n个记录的文件,按内存缓冲区大小分成若干长度为L的子文件(段);分别调入内存用有效的内排序方法排序后
4、送回外存;多路合并对初始归并串逐趟合并,直至最后在外存上得到整个有序文件为止,例某文件共10000个记录,设每个物理块可以容纳200个记录,内存缓冲区可以容纳5个物理块 1)经过10次内排序后得到10个初始归并段R1R10 2)采用两路归并,需四趟可以得到排好序的文件 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 2000 2000 2000 2000 2000 4000 4000 8000 10000,外排序基本方法:归并排序,外存上的信息的读/写以“物理块”为单位,假设每个物理块可容纳200个记录,则每一趟归并所需进行50次“读”和50次“写”,4趟归并并加上内部排序所需进
5、行的读写使得外排序总共需进行500读/写,外排序基本方法:归并排序,外部排序所需的总的时间=内部排序所需的时间(m*tis)+外存信息读写的时间(d*tio)+内部归并所需的时间(s*utmg)tis::得到一个厨师归并段进行内部排序所需时间tio:进行一次外存读/写所需时间utmg:对u个记录进行内部归并所需的时间m:经过内部排序后得到初始归并段的个数s:为归并的趟数d:为总的读/写次数因此:上例进行外派的总的时间为:10tis+500*tio+4*10000tmg,由于tio比tmg大的多,因此提高外排序的效率要降低读/写次数d,提高外排序效率的途径,因为d和归并的趟数s成正比,而s又与m
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 外部 排序 数据结构
![提示](https://www.desk33.com/images/bang_tan.gif)
链接地址:https://www.desk33.com/p-229231.html