C语言中的冒泡排序算法优化-最新资料
更新时间:2023-12-15 05:37:01 阅读量: 教育文库 文档下载
- c语言简单的冒泡排序算法推荐度:
- 相关推荐
C语言中的冒泡排序算法优化
数学中的数值大小在计算机中经常需要按规律排列,传统算法有冒泡排序法和选择排序法两种。其中数冒泡排序法较为经典。本文从传统方法的冒泡排序入手,对其进行常见的改进算法分析比;最后提出一种比较更为合理的优化算法。 1 传统的冒泡排序及改进 1.1 传统的冒泡排序 1.2 优化后的冒泡排序
上述1.1中的算法简单、容易理解,但有很多情况下它都有几趟排序是不会有任何的操作。为了避免这种情况一些专家和学者提出使用一个标记变量来解决,即当排序不发生任何数据交换时就立即停止;这样的解决办法即避免了无效的重复排序,又避免了有限资源的浪费。
2 一种提高100%效率的优化算法——同时前后冒泡 需要注意的是将上述程序段增加到1.1节中程序的第17行下方,然后从第12行开始到这里的结束部分总起来用一个大括号括起来,做为程序第11行循环的循环体。程序段中使用了变量m,它和在程序第19行中的变量是同一个,但含意完全不一样,这里用来表示是从程序的最后开始执行;而第19行中的表示是循环控制变量;只不过前面用过就不在需要它的值,所以这里可以重新赋初值来使用。
将上述测试数据输入测试,大家就会发现算法的有效循环执行了2次,到了第3次跳出;这是怎么回事情呢?这样的优化是如何工作的呢?
3 同时前后冒泡有效性分析验证
从上面两张表的对比得出,在这样的数据序列下,比原来的改进算法效率提高了50%。假定每个数在的位置,在每一趟比较以后都不在应该的位置上即都是无序的(排列好的除外);那么表1中第1趟只能排好105,而表2中则排好了15和105两个位置,效率可见提高了一倍;以此类推效率提高100%。而这里我们的测试数据在表一中的第一趟已经把38,41,52,54,99,105共6个数排好,固效率无法提高一倍,这是测试数据后面几个数已经从小到大排好造成的,跟我们的立论不冲突。 由此可见,本文提出的算法是有效的。
正在阅读:
C语言中的冒泡排序算法优化-最新资料12-15
湖南省中小企业发展专项资金管理办法(2016-2018)03-29
对团队的认识08-26
盾构工程监理细则06-21
教师问卷调查表03-24
培训计划书2篇12-11
深度学习--深度信念网络(Deep Belief Network)04-12
教育企业海外上市之五-ATA公司11-04
工程质量保证计划 - 图文06-29
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 冒泡
- 言中
- 算法
- 排序
- 优化
- 资料
- 最新
- 柴里煤矿“双基”建设典型经验汇报材料
- 英美习题1.1.1.1.1
- 心得体会-2019合规回头看心得体会范文2000字 精品
- 2017年浙江公务员考试行测真题及答案
- 9加几公开课教案
- 冲天炉熔炼工艺基础
- 2018新版部编人教版二年级下册道德与法制全册教案
- 中国信息安全行业分析报告
- 常见矿物鉴定方法
- 秦淮区安品街一期仓巷地块(东一、西二)住宅项目支撑拆除施工方案(定稿) - 图文
- 第七版客观题答案整理
- 全国开设的安全工程专业高校
- 人教版小学三年级下册数学《认识面积》教学设计
- 测量坐标转换系统的设计与实现(毕业论文)
- 水泵专业词汇表
- 三厂中学2013~2014学年第一学期高三化学学情调查试卷(17)
- 北大青鸟Benet--3.0-S2考试题1(4)
- 幼儿园主题活动记录表
- 河南省照明行业供应商名录2017年315家
- 2011年行政人事工作的不足及改进方法