冒泡排序法
来源:互联网 发布:红尘男女 网络歌手 编辑:程序博客网 时间:2024/06/02 06:25
冒泡法,就是从头到尾依次比较。以从小到大为例:当i = 0的时候,将后面的依次与之比较,使得0位的数,总是较小的那一个。比较完了之后,从i=1开始,接着比较;以此类推。最终,得到从小到大的数据。最差的情况是,每次比较都要换位置,操作次数为(n-1)+(n-2)+...+1=n(n-1)/2; 最好的情况是,不用交换。这里,在计算过程中加个标识计数器iCount,标识本次是否发现逆序,可改进冒泡法。
算法:改进冒泡排序法
输入:程序内部输入一个数组
输出:将数组内的数字按从小到大排序
#include <iostream>#include <stdio.h>#include <string.h>using namespace std;void bubble_sort(int *a, int left, int right);void exch(int &e1, int &e2);int main(){ int tmp, iCount = 0; int a[8] = {1,2,3,4,5,6,7,8}, i, j; bubble_sort(a, 0, 8); for(i = 0; i < 8; i++){ cout << a[i] << " "; } system("pause"); return 0;}// bubble sortvoid bubble_sort(int *a, int left, int right){ int i, j, iCount; for(i = left; i < right; i++){ iCount = 0; for(j = i + 1; j < right; j++){ if(a[i] > a[j]){ exch(a[i], a[j]); } iCount++; } if(iCount ==0){ break; } }}// change two integersvoid exch(int &e1, int &e2){ int tmp; tmp = e1; e1 = e2; e2 = tmp;}
阅读全文
0 0
- 【排序】冒泡排序法
- 常用排序-冒泡法排序
- 排序法之冒泡排序
- php排序&冒泡法排序
- 排序之冒泡排序法
- 排序算法--冒泡排序法
- 【PHP】冒泡排序法排序
- 排序算法--冒泡排序法
- 冒泡法排序
- 排序:冒泡法
- 冒泡排序法
- 冒泡法排序
- 冒泡法排序
- 冒泡排序法
- java 冒泡排序法
- 冒泡法排序
- 冒泡法排序
- 冒泡法排序
- Nginx shiro redis 多tomcat共享session
- git使用——将本地项目上传到GitHub
- CAD快捷键
- 将Web应用性能提高十倍的10条建议
- 《大话设计模式》之模板方法模式
- 冒泡排序法
- Mybatis框架入门
- Spring MVC 向页面传值-Map、Model和ModelMap
- 工厂模式
- 1.6进程的描述
- 冒泡法或起泡法
- 关于spring中接收form表单中对象的多个实例的几种方法
- Python2 socket示例
- Python 从入门到实践 5-3 课后习题