本节基本内容与要求;1.4 内部排序;一、基本概念;2. 排序的定义;3、排序的基本操作;4、排序的稳定性;内部排序:是指在排序的整个过程中,数据全部存放在计算机的内存储器里,并且在内存储器里调整数据的位置;
当文件很大以致内存不足以存放全部数据时,在排序过程中需要对外存进行存取访问,称这种借助于外存储器进行排序的方法为外部排序。
注意:
① 内排序适用于记录个数不很多的小文件
② 外排序则适用于记录个数太多,不能一次将其全部记录放入内存的大文件。;
每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子文件中的适当位置,直到全部记录插入完成为止。
把新元素(未排序的元素的关键字)逐个插入正在增长的顺序表中。
寻找插入位置的方法:
线性插入排序
对半插入排序
希尔排序;有序序列L.r[1..i-1];方法:;该算法适合于n 较小的情况,时间复杂度为O(n2).;void insertSort(RedType L[ ],int n)
{ int i ,j;
for(i=2; i=n; i++)
{ L[0]=L[i]; // 作为监视哨
for( j=i-1; L[0].keyL[j].key; ? ?j )
原创力文档

文档评论(0)