排序
有n个记录的序列 R1,R2,...,Rn R 1 , R 2 , . . . , R n ,其相应的关键字的序列是 K1,K2,...,Kn K 1 , K 2 , . . . , K n ,相应的下标序列1,2,…,n。通过排序,找出当前的下标序列1,2,…,n的一种排列 p1,p2,...,pn p 1 , p 2 , . . . , p n ,使得相应的关键字满足如下的非递减(或者非递增)关系: Kp1<=Kp2<=...<=Kpn K p 1 <= K p 2 <= . . . <= K p n ,这样就得到一个按关键字乐有序的记录序列。
内部排序与外部排序
根据排序时数据所占用的存储器的不同,可以将排序分为两大类。一类是整个排序过程完全在内存中进行,称为内部排序;另一类是由于待排序记录数据量太大,内存无法容纳全部数据,排序需要借助外部存储设备才能完成,称为外部排序。
主关键字与次关键字
上面所说的关键字 Ki K i 可以是记录 Ri R i 的主关键字,也可以是此关键字,甚至可以时记录中若干数据項的组合。若