A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 轮回长门winner 中级黑马   /  2015-7-22 23:20  /  559 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

冒泡排序如何实现

1 个回复

倒序浏览
冒泡排序的本质是:
比较相邻的元素。如果第一个比第二个大,就交换他们两个。
对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。
针对所有的元素重复以上的步骤,除了最后一个。
持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
void maopao(int a[], int n)          //声明的冒泡排序函数,int a[]代表测试数组,n代表数组长度
{
    int i, j, temp;
    for (j = 0; j < n - 1; j++)               //第一个for控制从第几个数字往下比较
         for (i = 0; i < n - 1 - j; i++)      //第二个for控制从这个数子往下比较
        {
            if(a[i] > a[i + 1])                //如何发现就互换位置
            {
                temp = a[i];
                a[i] = a[i + 1];
                a[i + 1] = temp;
            }
        }
}            
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马