冒泡排序法
2015-10-18 10:36
169 查看
冒泡排序法的基本思想是: 对待排序记录关键字从后往前(逆序)进行多遍扫描,当发现相邻两个关键字的次序与排序要求的规则不符时,就将这两个记录进行交换。这样,关键字较小的记录将逐渐从后面向前面移动,就象气泡在水中向上浮一样,所以该算法也称为气泡排序法。
# include <iostream> using namespace std; void Sort(int a[],int n){ int i,j,t,flag = 0; for(i=0;i<n;i++){ for(j=i+1;j<n;j++){ if(a[i]>a[j]){ t = a[i]; a[i] = a[j]; a[j] = t; flag = 1; } } } } //优化的冒泡排序 void Sort1(int a[],int n){ int i,j,t,flag = 0; for(i=0;i<n-1;i++){//这里n-1的原因,6个数走5遍 for(j=n-1;j>0;j--){ if(a[j-1]>a[j]){ t = a[j-1]; a[j-1] = a[j]; a[j] = t; flag = 1; } } if(flag==0){ break; }else{ flag = 0; } } } //升序 int main(){ int a[]={1,100,87,65,23,55,63,55,19,3}; Sort1(a,10); for(int i=0;i<10;i++){ cout<<a[i]<<" "; } cout<<endl; return 0; }
相关文章推荐
- 安装gVim
- 微信企业号开发之中文编码 40006
- Oracle数据泵的使用
- java中的线程(三)——控制线程的几种简单的方法和线程同步
- SQL的主键和外键的作用
- 20.Climbing Stairs
- ORACLE功能GREATEST功能说明具体实例
- Bootstrap 按钮分组
- Clos Network 与 Leaf Spine 架构
- Android(ViewPager中的ViewPager)ViewPager FragmentPagerAdapter嵌套子ViewPager FragmentPagerAdapter页面不能正常显示
- tinyos 串口通信
- Bootstrap 下拉菜单
- auto_ptr智能指针
- 简单二叉树的创建,连接树结点,二叉树的深度(转载)
- java--通过DOM4J方式生成rss文件简单实例
- 04-06组合数学实践_交通问题
- 使用批处理文件
- 算法录 之 BFS和DFS
- How to translate virtual to physical addresses through /proc/pid/pagemap
- 遗传基因科普(1):遗传基因是什么?