Skip to content

Latest commit

 

History

History
28 lines (15 loc) · 1.42 KB

README.md

File metadata and controls

28 lines (15 loc) · 1.42 KB

SORTS

内部排序算法的比较课设作业

内部排序算法的比较

【问题描述】

设计一个测试程序,比较几种内部排序算法的关键字比较次数、移动次数和运行时间。

【基本要求】

(1)实现各种内部排序。包括直接插入排序,希尔排序,冒泡排序,快速排序,简单选择排序,堆排序。

(2)待排序元素的关键字设为整数。其中的数据要用随机数产生(如10000个),至少用5组不同的数据做比较,再使用各种算法对其进行排序,记录其排序时间,再汇总比较。

(3) 演示程序以人机对话的形式进行。每次测试完毕显示各种比较指标值的列表,用饼图或条形图进行表示,以便比较各种排序的优劣。

(4) 界面友好,易与操作。采用菜单方式进行选择。

【选做内容】

(1) 对不同表长进行比较;

(2) 验证各算法的稳定性;

总计用了3w组数据,在说明里虽然写了合作制作,但是另一个人只写了一个简单选择排序。

程序虽然是用饼图显示数据比较,但是因为不同排序的效率和数据数量级差距过大,不好用比例的方式呈现,遂用log函数并设定常数与原数据算法处理,取log()的前段,使小的数也有一定的显示区域,但数据大的也和小的也有较明显区别,值得一提的是简单选择排序的排序次数过少,没能编出显示。