外部排序包括以下两个步骤:
1.把排序的文件中的一组记录读入内存的排序区,对读入的记录按上面讲到的内部排序法进行排序,排序之后输出到外部存储器。...比如,判断数据序列如:9,30,499,46,58,79 是否为堆,将其转换为一颗完全二叉树,如下图:
?
dui1.PNG
上图中每个节点上的灰色数字代表该节点数据在底层数组中的索引。...,an-1中选出最小的数据,必须进行n-1次比较:然后在a1,a2,a3,...,an-1中选出关键字最小的记录,又需要做n-2次比较。事实上,在后面的。...Shell排序
对于直接插入排序而言,当插入排序执行到一半时,待插值左边的所有数据都已经处于有序状态,直接插入排序将待插值存储在一个临时变量里。...那么,如何将两个有序的数据序列合并成一个新的有序序列?合并算法的具体步骤如下。
定义变量i,i从0开始,依次等于A序列中每个元素的索引。