冒泡法排序

来源:互联网 发布:淘宝如何买东西便宜 编辑:程序博客网 时间:2024/06/10 11:34
冒泡排序算法的运作如下:(从后往前)
  1. 比较相邻的元素。如果第一个比第二个大,就交换他们两个。
  2. 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。
  3. 针对所有的元素重复以上的步骤,除了最后一个。
  4. 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
代码如下:
//起泡法排序://n个元素,比较n-1趟;//第j趟比较n-j次;#include<stdio.h>#include<stdlib.h>int main(){int a[10] = {144,24,43,35,67,78,27,11,3,2}; //n个元素(n=10)int i;int j;int temp;for(j=0;j<9;++j)       //比较n-1趟(10-1=9){for(i=0;i<9-j;++i) //第j趟比较n-j次(因为趟数从0开始所以还要-1){if(a[i] > a[i+1]){temp = a[i];a[i] = a[i+1];a[i+1] = temp;}}}printf("升序排列:\n");for(i=0;i<10;i++){printf("%d\n",a[i]);}for(j=0;j<9;++j)       //比较n-1趟(10-1=9){for(i=0;i<9-j;++i) //第j趟比较n-j次(因为趟数从0开始所以还要-1){if(a[i] < a[i+1]){temp = a[i];a[i] = a[i+1];a[i+1] = temp;}}}printf("降序排列:\n");for(i=0;i<10;i++){printf("%d\n",a[i]);}system("pause");return 0;}


0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 指甲上没半月牙怎么办 电动车车牌被偷了怎么办 警察拖车拖坏了怎么办 6岁儿童牙疼怎么办 小白单车不退押金怎么办 光盘放笔记本电脑里读不出来怎么办 cd光盘读不出来怎么办 最近脸干的不行怎么办 脸感觉干的不行怎么办 新生儿睡觉黑白颠倒了怎么办 婴儿吐水和奶花怎么办 刚刚出生的宝宝拉肚子怎么办 刚出生的婴儿拉肚子怎么办 新生儿5天拉稀水怎么办 10个月孩子拉肚子怎么办 不满月的宝宝拉肚子怎么办 一周岁宝宝发烧腹泻呕吐怎么办 6个月宝宝37度怎么办 1岁宝宝发烧37.2怎么办 新生儿发烧37度3怎么办 两个月宝宝抵抗力差怎么办 6月宝宝着凉拉稀怎么办 六个月的宝宝拉肚子怎么办 衣服颜色太深了怎么办 一多半宝宝爱喝水不爱吃饭怎么办 十个月宝宝不爱吃饭怎么办 十个月宝宝突然不爱吃饭怎么办 二十个月宝宝不爱吃饭怎么办 十个月的宝宝不爱吃饭怎么办 6年级学生数学差怎么办 打印机打不出来就是一张白纸怎么办 wps表格下拉数字不递增怎么办 wps表格圈怎么打出来怎么办 手表固定圈掉了怎么办 起来觉得头晕头胀怎么办? 孩子不好好写作业怎么办 孩子考试考差了怎么办 孩子计算题马虎大意怎么办 二年级孩子不认字怎么办 发现计算上的错误怎么办 孩子不好好做作业怎么办