八大排序比较:冒泡排序,选择排序,插入排序,归并排序,快速排序,桶排序,基数排序的比较啊
排序算法实现与性能分析,评测:
编写程序,实现冒泡排序,简单选择排序,简单插入排序,归并排序,快速排序和其他各类排序方法,产生规模分别为100,1000,10000,100000,1000000的模拟数组,使用上述排序方法对同样的模拟数据进行排序,在验证排序结果正确性(编写排序结果验证函数)的同时,利用系统时间函数分别记录各排序开始时间和结束时间,计算各排序所需时间(若超过5分钟则记录,并在结果分析中标出)。再对已排序数据稍加次序调整,模拟几乎有序数组,再重复上述排序过程。给出评测结果表,总结,分析上述排序结果。
当数组无序
当数组几乎有序
分析
时间复杂度:
归并排序,快速排序,计数排序,基数排序以及桶数较多的桶排序用时明显更短,而冒泡排序,简单选择排序,简单插入排序用时较长
稳定性:
当数组由无序变为有序,耗时减少越多说明算法越稳定,由图中对比可以看出,冒泡排序,简单插入排序,归并排序,基数排序,计数排序是稳定的排序算法,另外,由于桶排序所用桶内的排序方法,所以桶排序也是稳定的,而简单选择排序,快速排序不稳定。
效果展示
源文件下载
以下为源代码
1 |
|