首先我们引入冒泡排序思想:

冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。

它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行,直到没有相邻元素需要交换,也就是说该元素列已经排序完成。

这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。

接下来上代码;

#include<stdio.h>
void  maopao(int arr[], int len) {int i;for (i = 0; i < len - 1; i++){int flag = 1;int j;for (j = 0; j < len - 1 - i; j++){if (arr[j] > arr[j + 1]) {int tem = arr[j];arr[j] = arr[j + 1];arr[j + 1] = tem;flag = 0;}}if (flag == 1)break;}}
int main()
{int arr[10] = { 9,8,7,6,5,4,3,2,1,0 };int len = sizeof(arr) / sizeof(arr[10]);maopao(arr, len);for (int i = 0; i < len; i++){printf("%d", arr[i]);
}return 0;
}

关于优化代码思路在于——跳出无用排序,比如我们这里实现0-9升序,如果我们输入的数为0,1,2,3,4,5,6,7,8,9那么传统的经典思路存在一定的局限,优化算法就可以避免无用的排序人浪费的时间。这里我们使用flag作为判断标签实现跳出循环的判断标志。

C语言自定义函数——实现优化冒泡排序相关推荐

  1. R语言optimize函数一维优化实战

    R语言optimize函数一维优化实战 目录 R语言optimize函数一维优化实战 #基础语法 #优化用户自定义的函数

  2. R语言自定义函数计算dataframe每列中的缺失值NA的个数、缺失值问题及其填充示例

    R语言自定义函数计算dataframe每列中的缺失值NA的个数.缺失值问题及其填充示例 目录

  3. 《零基础看得懂的C语言入门教程 》——(十一)C语言自定义函数真的很简单

    一.学习目标 了解C语言的自定义函数的使用方法 了解C语言自定义函数的传参 了解C语言自定义函数的返回值 目录 C语言真的很难吗?那是你没看这张图,化整为零轻松学习C语言. 第一篇:(一)脱离学习误区 ...

  4. R语言 自定义函数之趣味程序--老虎机

    ****R语言 自定义函数之趣味程序--老虎机**** 自定义函数 自定义规则 自定义格式 案例:老虎机 老虎机符号准备 老虎机结果分类 老虎机得分计算 开始老虎机试玩 获奖感言 自定义函数 R语言作 ...

  5. [R语言]3. R语言自定义函数

    R语言有很多包,里面有很多函数,但是有时候我们还是需要自定义一些函数,这些函数能够实现一些特定的功能,其实学过一点编程的知道任何语言都可以自定义函数,R语言自定义函数格式如下: 函数的语法格式是: f ...

  6. c语言自定义函数格式化,自定义函数的形式

    c语言程序设计题:请用自定义函数的形式编程实现,代码: #include 请用自定义函数的形式编程实现 CSS布局HTML小编今天和大家分享 s = m. + n. + k.,m.n.k 从键盘输入( ...

  7. C语言自定义函数如何返回数组

    C语言自定义函数如何返回数组  C语言研究中心  CTO  9个月前 (01-28)  4759次浏览  5个评论 最近看到一些同学问题,有提到说:如何在一个函数中返回数组呢? 能否直接在自定义 函数 ...

  8. c语言中自定义函数返回数组,C语言自定义函数返回数组的方法(图文详解)

    C语言自定义函数返回数组的方法(图文详解) 最近看到一些同学问题,有提到说:如何在一个函数中返回数组呢? 能否直接在自定义 函数中,写成char *类型返回值,直接返回呢?,代码如下: 直接返回str ...

  9. c语言自定义函数程序设计,ch3自定义函数设计 C语言 《解析C程序设计》.ppt

    ch3自定义函数设计 C语言 <解析C程序设计> 全局变量--外部变量 在函数外定义的变量 有效范围:从定义变量的位置开始到本源文件结束,及有extern声明的其它源文件 存储类型:缺省e ...

最新文章

  1. 2018年Spring Cloud中国社区技术沙龙-成都站
  2. 听说redux和react-redux在写项目中更配哦
  3. 有关计算机代码的游戏,七灯游戏是一款经典的益智类游戏。游戏中,有七盏灯排成一圈,如图a所示,初始时灯的开关状态随机生成,操作其中某一盏灯,则可以切换该灯的“开/关”状态,同时,这盏灯-组卷网...
  4. IOS之Swift5.x开发通讯录实战
  5. Java发送邮件(带附件)
  6. 云原生那些顶级开源项目,你都用过哪些?
  7. 计算机老师开场白试讲视频,教师招考试讲模版之开场白
  8. python用map提取一个数的个十百位数_如何使用python中的map函数?
  9. 大数据之-Hadoop3.x_MapReduce_排序概述---大数据之hadoop3.x工作笔记0114
  10. python re正则_正则表达式+Python re模块详解
  11. 购买二手房时 众多购房者忽视办理土地证过户
  12. Mybatis-学习笔记(N)mybatis-generator 生成DAO、Mapper、entity
  13. 如何在java中实现小数点自增_java保留小数的四种实现方法
  14. 关于css--的封装、继承、多态
  15. 如何解除任务管理器被禁用
  16. Linux磁盘挂载和共享
  17. 全国计算机设计大赛贴吧,2019继续教育学院精彩时刻——大赛篇
  18. 大集中系统的个人所得税解决方案
  19. python mel
  20. 2019年的阅读书单,夯实我的技术栈

热门文章

  1. 2018年末施瓦辛格热血演讲《关于成功·成功的真谛》—YouTuBe播放量超1个亿!盘它!...
  2. SCIP求解器给模型变量赋初值
  3. zabbix日志监控:操作系统、业务系统、文件大小、多行日志
  4. 华为那款智慧屏用的鸿蒙系统,读创--华为智慧屏来了,将采用鸿蒙系统
  5. 在线考试系统的研究与实现
  6. HTML5表格合并之行合并出现问题
  7. 腾讯云(CentOS7)使用Docker部署JeecgBoot
  8. 飞桨PaddleOCR C++预测库布署
  9. Fritzing - 创建自己的零件(2)
  10. 24、PrepareStament