利用随机函数产生N个随机整数(20000以上),对这些数进行多种方法进行排序。 1) 分别采用的方法有插入排序、希尔排序、起泡排序、快速排序、选择排序、堆排序、归并排序,实现这批数据的排序,并把排序后的结果保存在不同的文件中。 2) 统计每一种排序方法的性能(以上机运行程序所花费的时间为准进行对比),找出其中两种较快的方法。
1
该程序包括常用的排序算法代码:直接插入排序,二分插入排序,希尔排序,快速排序,选择排序。同时通过产生一个指定个数的随机数组,调用各种不同排序算法对其进行排序,记录各种算法的耗时,写入一个文本文件进行对比分析各种排序算法的时间性能。
2021-10-19 15:30:54 4KB 排序 时间复杂度 希尔排序
1
源程序给出了插入排序、选择排序、希尔排序、堆排序、冒泡、双向冒泡、快速排序、归并排序、递归的归并排序、基数排序等多种排序算法,其中有17处需要填空。
1
希尔排序可提高排序速度,原因是: ◆ 分组后n值减小,n²更小,而T(n)=O(n²),所以T(n)从总体上看是减小了; ◆ 关键字较小的记录跳跃式前移,在进行最后一趟增量为1的插入排序时,序列已基本有序。 增量序列取法 ◆ 无除1以外的公因子; ◆ 最后一个增量值必须为1。
2021-09-21 22:37:55 3.72MB 数据结构 算法
1
c代码-希尔排序.
2021-07-15 14:03:45 879B 代码
1
随机生成小于5000的数 根据操作通过不同的方法排序 泡泡排序 直接插入排序 折半插入排序 希尔排序 直接选择排序 统计时间 比较次数和交换次数 保存为txt文件
2021-07-05 15:01:01 17KB c++编写的排序
1
python数据结构与算法分析,希尔排序法实现,希尔排序.py
2021-06-29 09:05:30 692B python 数据结构
1
编写程序,实现所有内部排序算法,并比较这些算法在不同数据量下的运行时间。 (1)排序算法包括:插入排序、希尔排序、堆排序、归并排序、快速排序、基数排序。 (2)对整数进行排序。 (3)程序功能:可从键盘输入初始数据个数(数据自动生成)、初始数据类别(随机、正序、逆序),并得出排序所用时间(精确到毫秒) 注1:若某算法排序时间超过300秒,可显示为N/A,且不用记录在Excel表中 注2:rand()函数生成的随机数范围在0~32767之间,为扩大该范围,可使用下面代码: randnum = (rand() << 16) + rand(); // 随机数范围扩大至0~231之间 (4)生成图表:对1000、8000、30000、80000、150000、300000、500000、1000000、2000000、5000000个数据排序后得出排序时间,并制作类似的折线图如下。
1
python希尔排序,开源: https://codechina.csdn.net/-/snippets/353 基于菜鸟的https://www.runoob.com/python3/python-shellsort.html
2021-04-30 09:05:38 7.44MB python 排序算法 希尔排序
1