C语言冒泡排序-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

C语言冒泡排序

2016-05-27 19:03:38 3279 5

screenshot

#include <stdio.h>

#define Max  5
int main(int argc, const char * argv[]) {
    int  a[Max] = {22,16,80,1,10};
    int time = 0;
    int count = 0;
    
    for (int i = 0; i < Max - 1 ; i++) {
        for (int j = 0; j < (Max - 1 - i); j++) {
            time++;
            if (a[j] > a[j+1] ) {
                int tmp;
                tmp = a[j];
                a[j] = a[j+1];
                a[j+1] = tmp;
                count++;
            }
        }
    }
    printf("交换次数%d\n",count);
    printf("执行次数%d\n",time);
    //遍历
    for (int i = 0 ; i < Max; i++) {
        printf("%d ",a[i]);
    }
    return 0;
}

Question : 
1.我这已经是最优的了吧
2.第二个for循环的j条件,为什么要设置成 Max - i - 1 ,Max表示数组长度.
取消 提交回答
全部回答(5)
  • 游客x4uu57rrcwjuo
    2020-03-19 10:55:38

    问题1:这个算法还有一点可以优化,就是对已经有序的序列的处理,比如{1,2,3,5,4};,处理方法是如果没有交换就跳出循环不过我没有完成优化,因为测试过没能完成排序。 问题2:j条件的设置:取决于i次循环后未排序的长度。

    0 0
  • 一生有你llx
    2019-07-17 19:18:39

    问题1:这个算法还有一点可以优化,就是对已经有序的序列的处理,比如{1,2,3,5,4};,处理方法是如果没有交换就跳出循环不过我没有完成优化,因为测试过没能完成排序。
    问题2:j条件的设置:取决于i次循环后未排序的长度。

    0 0
  • xumaojun
    2019-07-17 19:18:39

    问题1:这个算法还有一点可以优化,就是对已经有序的序列的处理,比如{1,2,3,5,4};,处理方法是如果没有交换就跳出循环不过我没有完成优化,因为测试过没能完成排序。
    问题2:j条件的设置:取决于i次循环后未排序的长度

    0 0
  • nothingfinal
    2019-07-17 19:18:39

    问题1:这个算法还有一点可以优化,就是对已经有序的序列的处理,比如{1,2,3,5,4};,处理方法是如果没有交换就跳出循环不过我没有完成优化,因为测试过没能完成排序。
    问题2:j条件的设置:取决于i次循环后未排序的长度。

    0 0
  • 杨冬芳
    2019-07-17 19:18:39

    问题1:这个算法还有一点可以优化,就是对已经有序的序列的处理,比如{1,2,3,5,4};,处理方法是如果没有交换就跳出循环不过我没有完成优化,因为测试过没能完成排序。
    问题2:j条件的设置:取决于i的值,因为i之前都是排过序的,还有数组最后一位元素也是排过的。

    0 0
添加回答
相关问答

17

回答

教你如何简单将OSS bucket挂载成为阿里云ECS服务器本地盘

梦丫头 2017-02-17 14:01:12 37989浏览量 回答数 17

9

回答

阿里云ECS安装虚拟主机系统DirectAdmin开心版百分百成功的方法

hxs 2014-05-26 20:05:30 34502浏览量 回答数 9

8

回答

阿里云服务器内网传输使用指南

任逍遥 2013-03-22 00:05:42 30780浏览量 回答数 8

3

回答

2020年05月编程排行榜-C语言继2015年,重新成为编程排行榜第一名

huc_逆天 2020-05-06 13:43:42 35585浏览量 回答数 3

11

回答

新的技术,比如大数据、AI如何应用在航空行业?

诺诺罗亚 2019-06-26 16:15:54 117954浏览量 回答数 11

22

回答

专家教你:省钱更省心,用镜像0元购云服务器!

豆妹 2014-08-27 17:03:25 43181浏览量 回答数 22

10

回答

阿里云centos静默安装oracle

美味的小鱼 2014-08-12 14:23:44 30651浏览量 回答数 10

5

回答

2018云栖大会·重庆峰会

游客886 2018-07-27 10:57:51 26915浏览量 回答数 5

55

回答

『开发者大会.2013』伙伴们,快准备素材,登上“云梦想墙”!

qiujin2012 2013-09-13 21:46:41 31384浏览量 回答数 55

5

回答

C语言算法 【精品问答合集】

我是管理员 2018-07-13 15:51:28 27081浏览量 回答数 5
+关注
杨冬芳
IT从业
1
文章
9167
问答
问答排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载