置换-选择排序算法的引入是为了生成更长的初始归并段,从而减少归并的次数,提高排序的效率。让我们详细探讨一下为什么引入这种算法以及它的具体实现步骤。
为什么要引入置换-选择排序

我们都知道,减少初始归并段的数量可以减少归并的次数。如果总记录数为n,每个归并段的长度为t,那么归并段的数量r可以表示为r=[n/t]。通过内部排序方法得到的初始归并段长度通常是相同的(除了最后一段),这取决于内部排序时可用的内存空间大小。因此,我们需要探索新的方法来生成更长的初始归并段,这就是引入置换-选择算法的原因。

算法实现步骤

在内存缓冲区中选择一个符合以下条件的数字:
SHOPEX简灰服装商城整站源码下载。 安装方法:1.解压上传程序至网站根目录.. 访问:域名/bak.(用户名:admin 密码:123456)2.进入帝国备份王后,配置数据库数据库信息.选择-www.taomoban.net目录.还原数据库.3.修改FTP目录下的config/config.phpphp 数据库连接信息.4.登陆网站后台--清空缓存..5.删除bak文件夹 后台:shopadm
该数字必须大于当前初始归并段中的任意数字,且在所有符合条件的数字中是最小的。如果满足这些条件,则将该数字加入当前初始归并段,直到内存缓冲区中所有记录都小于当前初始归并段中的最大记录时,就生成了一个初始归并段。重复这个过程,生成多个初始归并段,直到文件中的所有记录都被归入某个初始归并段。其具体步骤如下:
首先,从初始文件中输入l个记录到内存工作区中;然后,从内存工作区中选出关键字最小的记录,记为MINIMAX记录;将MINIMAX记录输出到归并段文件中;此时,内存工作区中还剩下l-1个记录,如果初始文件不为空,则从初始文件中输入下一个记录到内存工作区中;从内存工作区中所有比MINIMAX值大的记录中选出值最小的关键字的记录,作为新的MINIMAX记录;重复步骤3至5,直到在内存工作区中选不出新的MINIMAX记录为止,这样就得到了一个初始归并段;重复步骤2至6,直到内存工作区为空,这样就可以得到所有的初始归并段。










