上传者: 62633178
|
上传时间: 2025-12-30 17:54:02
|
文件大小: 107KB
|
文件类型: DOCX
实验内容及要求:
输入n个整数,分别用希尔排序、快速排序、堆排序和归并排序实现由小到大排序并输出排序结果。要求n=10,15,20进行三组排序实验。
实验目的:掌握希尔排序、快速排序、堆排序、归并排序算法。
数据结构设计简要描述:
采用四种排序算法对输入的n个整数进行排序。
算法设计简要描述:
希尔排序:.先选定一个小于n的整数llr作为第一增量,然后将所有距离为llr的元素分在同一组,并对每一组的元素进行直接插入排序。然后再取一个比第一增量小的整数作为第二增量,重复上述操作…
快速排序:任取待排序序列中的某个数据元素(例如:第一个元素)作为基准,按照该元素的关键字大小将整个序列划分为左右两个子序列:左侧子序列中所有元素都小于或等于基准元素,右侧子序列中所有元素都大于基准元素,基准元素排在这两个子序列中间,分别对这两个子序列重复施行上述方法,直到所有的对象都排在相应位置上为止。当增量的大小减到1时,就相当于整个序列被分到一组,进行一次直接插入排序,排序完成。
堆排序:初始化后,堆顶与堆底互换,最大的放在最后面。并在文件的基础上进行操作。
归并排序:将两个有序的序列合并成一个有序