排序算法总结(七)冒泡排序
2013-09-18 14:10
218 查看
冒泡排序的思想是从开始位置不断比较相邻两位置数字大小,这样第一轮将最大的数字替换到最后面的位置,第二轮将次大数字换到倒数第二位置,逐步完成排序。
参考代码:
冒泡排序算法时间复杂度为O(n2),最好情况初始已经有序为O(n)。
参考代码:
#include <iostream> using namespace std; void BubbleSort(int *arrays,int n); void main() { int i; int arrays[]={1,4,5,2,9,0,3}; BubbleSort(arrays,7); for (i=0;i<7;i++) { cout << arrays[i] <<" "; } cout << endl; } void BubbleSort(int *arrays,int n) { int i,j; int tmp; int flag; for (i=0;i<n-1;i++) { flag=0; for (j=0;j<n-i-1;j++) { if (arrays[j] > arrays[j+1]) { tmp=arrays[j]; arrays[j]=arrays[j+1]; arrays[j+1]=tmp; flag=1; } } if (flag==0) { return; //发现数字有序就不用排了 } } }
冒泡排序算法时间复杂度为O(n2),最好情况初始已经有序为O(n)。
相关文章推荐
- [排序算法总结]冒泡排序、简单选择排序
- iOS 排序算法总结—冒泡排序
- 各种排序算法总结----基数排序、归并排序、插入排序、冒泡排序、选择排序、快速排序、堆排序、希尔排序
- 排序算法总结之冒泡排序
- 排序算法总结:冒泡排序
- 排序算法总结(冒泡排序、直接插入排序、希尔排序)(python实现)
- 排序算法总结(1)——冒泡排序
- C++总结笔记(六)排序算法之冒泡排序
- 排序算法总结之冒泡排序 Bubble Sort
- Java排序算法总结之冒泡排序
- 总结几种排序算法(一)---冒泡排序
- 排序算法总结(3)--冒泡排序
- 排序算法总结---冒泡排序
- 【排序算法总结】冒泡排序
- 排序算法总结之冒泡排序
- 【学习总结】Java中最常用的三大排序算法-冒泡排序、选择排序、插入排序
- Java常用排序算法冒泡排序与选择排序总结
- 数据结构与算法:七种排序算法总结(冒泡排序、选择排序、直接插入排序、希尔排序、堆排序、归并排序、快速排序)
- 排序算法总结1-冒泡排序
- Java排序算法总结之(二)——基于交换排序(冒泡排序、快速排序)