排序算法效率分析及总结
更新时间:2023-10-13 15:05:01 阅读量: 综合文库 文档下载
C语言主流的排序算法效率分析及总结
班级:计科二班作者:XXX
日期:2016-3-29 工作:算法搜集及程序组合,结论总结。 星期二同组者:刘文
工作:程序测试,时间记录以及程序演示
这次我们组主要搜集了冒泡排序算法,简单排序算法,直接插入排序算法,希尔排序算法,堆排序算法,快速排序算法六种常见的排序算法,并对它们的运行效率作了一个简单的测试与分析。
A冒泡排序:
算法思想简单描述:
在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。冒泡排序是稳定的。
算法时间复杂度:O(N2)
下面我们来测试一下不同数据量的排序时间: 这是200个乱序随机数:
冒泡排序运行时间为0.000000毫秒 这是1000个乱序随机数:
冒泡排序运行时间为3.000000毫秒 这是5000个乱序随机数:
冒泡排序运行时间为70.000000毫秒 这是20000个乱序随机数:
冒泡排序运行时间为1464.000000毫秒
从不同数据量的纵向分析来看,
1, 在冒泡排序算法里,随着数据量的增加,其运行时间也会越来越长。
2, 在两百个数据的时候,其运行时间少到忽略不计,即运算瞬间完成。这说明冒泡排序在处理小数
据量的时候还是很给力的
3, 当处理的数据量从5000提到20000的时候,冒泡排序的运行时间发生了质的增加。从几十毫秒到
几千毫秒,运行时间大大增加,从这里可见,冒泡排序在处理稍微大的数据的时候便已经显现出了力不从心感,我个人感觉已不大适用。
B简单选择排序:
算法思想简单描述:
在要排序的一组数中,选出最小的一个数与第一个位置的数交换;然后在剩下的数当中再找最小的与第二个位置的数交换,如此循环到倒数第二个数和最后一个数比较为止。选择排序是不稳定的。
时间复杂度:O(N2)
下面我们依然来测试一下简单选择排序在不同数据量的运行时间: 这是200个乱序随机数:
简单选择排序运行时间:0.000000毫秒 这是1000个乱序随机数:
简单选择排序运行时间:2.000000毫秒 这是5000个乱序随机数:
简单选择排序运行时间:44.000000毫秒 这是20000个乱序随机数:
简单选择排序运行时间:694.000000毫秒
从不同数据量的纵向分析来看,
1,其运行时间随着数据量的增加而增加
2, 简单选择排序同冒泡排序一样,在处理像200个这样的小数据量的时候,其运行时间可以忽略不
计,即瞬间完成
3, 当数据量从5000提高到20000的时候,其运行时间也是提高了几十倍。
C直接插入排序
算法思想简单描述:
正在阅读:
排序算法效率分析及总结10-13
真对得起这张脸 独家评测丰田皇冠2 0T06-10
2021年法律培训心得精选范文5篇08-21
如何理解方差和标准差的意义02-03
关于电流计指针偏转问题05-09
机械制造工程原理题目(附答案)06-11
七年级(上)期末数学压轴题复习卷12-26
徐一楠开题报告(开题报告修改最终稿)07-10
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 算法
- 排序
- 效率
- 总结
- 分析