为什么我们需要外部排序?

sil*_*wen 4 sorting algorithm virtual-memory external-sorting

外部排序的主要原因是数据可能比我们拥有的主内存大.但是,我们现在正在使用虚拟内存,虚拟内存将负责主内存和磁盘之间的交换.为什么我们需要有外部排序呢?

Pau*_*kin 7

外部排序算法可以有效地对大量数据进行排序(即使数据不适合物理RAM).

虽然使用内存中排序算法和虚拟内存满足外部排序的功能要求(即,它将对数据进行排序),但它无法实现高效的非功能性要求.良好的外部排序可以最大限度地减少读取和写入外部存储的数据量(并且历史上也可以寻找时间),并且在不是为此设计的排序算法之上的通用虚拟内存实现将无法与设计为最小化IO.