冒泡排序
2016-02-27 21:27
204 查看
1算法原理
冒泡排序算法的运作如下:比较相邻的元素。如果第一个比第二个大,就交换他们两个。
对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。
针对所有的元素重复以上的步骤,除了最后一个。[1]
持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
2算法分析
时间复杂度
算法稳定性
冒泡排序就是把小的元素往前调或者把大的元素往后调。比较是相邻的两个元素比较,交换也发生在这两个元素之间。所以,如果两个元素相等,我想你是不会再无聊地把他们俩交换一下的;如果两个相等的元素没有相邻,那么即使通过前面的两两交换把两个相邻起来,这时候也不会交换,所以相同元素的前后顺序并没有改变,所以冒泡排序是一种稳定排序算法。3算法描述
相关文章推荐
- 【小型系统】抽奖系统-使用Java Swing完成
- JavaScript构造函数模式+prototype(原型)模式拓展系统类和自定义类
- Varnish配置文件详解(架构师之路)
- [Python入门]Chapter10 列表
- C++Primer第5版读书笔记(第4章)
- java字符串转16进制
- 一些开源的项目
- 检测INT3 软断点
- Json Utils
- 【NOIP2012】国王游戏
- bzoj3991: [SDOI2015]寻宝游戏
- iOS项目社会化分享-微信分享,朋友圈分享
- 浙大PAT1059 Prime Factors
- FragmentActivity和Activity的具体区别在哪里
- SublimeText3 配置前端开发插件
- 二叉树的非递归遍历
- uva 437 The Tower of Babylon
- 1.什么是泛型和C#中泛型在Class上的实现
- Java类和封装学习心得(1)
- 1072. Gas Station (30)