冒泡排序就是从左至右比较相邻的两个数值大小,如果右侧的数值较小,则交换两个数值的位置,较大的数值就会像泡泡一样一路向右漂浮。

#include <stdio.h>//small to big
void Bubble_Sort(unsigned char *input_data, unsigned int input_length)
{unsigned int i = 0, j = 0;unsigned char temp = 0;for (i = 0; i < input_length - 1; i++){for (j = 0; j < input_length - 1 - i; j++){if (input_data[j] > input_data[j + 1]){temp = input_data[j];input_data[j] = input_data[j + 1];input_data[j + 1] = temp;}}}
}int main()
{int i = 0;unsigned char buff[] = { 54, 78, 61, 46, 18, 56, 14, 51, 65, 97, 79, 13 };Bubble_Sort(buff, sizeof(buff));for (i = 0; i < sizeof(buff); i++){printf("%d ", buff[i]);}printf("\r\n");
}

C排序算法:(二)冒泡排序相关推荐

  1. 排序算法:冒泡排序、插入排序、选择排序、希尔排序

    相关博客: 排序算法:冒泡排序.插入排序.选择排序.希尔排序 排序算法:归并排序.快速排序 排序算法:桶排序.计数排序.基数排序 排序算法:堆排序 十大排序算法小结 一.冒泡排序: 1.算法原理: 冒 ...

  2. 【排序算法】冒泡排序、简单选择排序、直接插入排序比较和分析

    [排序算法]冒泡排序.简单选择排序.直接插入排序比较和分析 写在前面: 本文简单介绍了冒泡排序.简单选择排序.直接插入排序,并对这三种排序进行比较,入参都是80000个随机数,比较算法耗时.进一步,我 ...

  3. 数据结构和算法之五:排序算法二

    数据结构基础之排序算法二 学习算法,排序算法当然是不能少的,这次我们来学习一下基础的选择排序,冒泡排序,以及大名鼎鼎的快速排序. 选择排序 选择排序,非常好理解,就是找最小的数放到第一位,然后从第二个 ...

  4. Java排序算法:冒泡排序

    Java排序算法:冒泡排序 //创建数组并赋值int[] data = new int[] {11,10,55,78,100,111,45,56,79,90,345,1000};for(int i=0 ...

  5. golang 排序_常用排序算法之冒泡排序

    周末无事,带娃之余看到娃娃在算数,想到了排序-尝试着把几种常用的排序算法跟大家聊一聊,在分析的后面我会用GoLang.PHP和JS三种语言来实现下. 常见的基于选择的排序算法有冒泡排序.插入排序.选择 ...

  6. 十大排序算法:冒泡排序、选择排序、插入排序、希尔排序、归并排序、快速排序、堆排序、计数排序、桶排序、基数排序

    冒泡排序.选择排序.插入排序.希尔排序.归并排序.快速排序.堆排序.计数排序.桶排序.基数排序的动图与源代码. 目录 关于时间复杂度 冒泡排序 选择排序 插入排序 希尔排序 归并排序 快速排序 堆排序 ...

  7. 数据结构与算法:十大排序算法之冒泡排序

    数据结构与算法:十大排序算法之冒泡排序 package array;import java.util.Arrays;//冒泡排序 //1.比较数组中两个相邻的元素,如果第一个数比第二个数大,我们就交换 ...

  8. 排序算法(1)冒泡排序

    排序算法(1)冒泡排序 原理: 1.比较相邻的元素.如果第一个比第二个大,就交换他们两个. 2.对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对.在这一点,最后的元素应该会是最大的数. 3. ...

  9. php编写冒泡排序算法_PHP排序算法之冒泡排序(Bubble Sort)实现方法详解

    本文实例讲述了PHP排序算法之冒泡排序(Bubble Sort)实现方法.分享给大家供大家参考,具体如下: 基本思想: 冒泡排序是一种交换排序,它的基本思想是:两两比较相邻记录的关键字,如果反序则交换 ...

  10. 冒泡和快速排序的时间复杂度_常用排序算法之冒泡排序

    周末无事,带娃之余看到娃娃在算数,想到了排序-尝试着把几种常用的排序算法跟大家聊一聊,在分析的后面我会用GoLang.PHP和JS三种语言来实现下. 常见的基于选择的排序算法有冒泡排序.插入排序.选择 ...

最新文章

  1. Google Latitude 能否成为所有移动社会网络的杀手?
  2. boost::proto::flatten相关的测试程序
  3. Boost:传输文件的测试程序
  4. StackOverflow 每月5.6亿PV,但只用25台服务器
  5. 最原创的验证码产生过程,桃花朵朵开
  6. 使用JAXP对XML文档进行DOM解析
  7. Android之如何解决Android Studio左边的的project不见了
  8. 深入理解Java中的位操作
  9. matlab fftshift_MATLAB信号频谱分析FFT详解
  10. iOS成长之button
  11. vi vim 使用方法
  12. Java Bean 与Spring Bean 的区别
  13. 查询各分类中最大自增ID
  14. VelocityTracker 速度追踪
  15. HTML+CSS学习打卡第一周
  16. latex 表格及标题居中
  17. android8.0 桌面图标适配
  18. tcpdump for udp
  19. 【C++】C++实战项目机房预约管理系统
  20. Qt创建线程两种方式的区别

热门文章

  1. 必填校验加变色,点击颜色消失
  2. java filter 模式,Java设计模式----过滤器模式(挑三拣四)
  3. 怎样调用另一个html中的元素,html – 使用DIV作为另一个元素的背景
  4. android sd卡 格式化 rom,Android开发之获取SD卡及手机ROM容量的方法
  5. datetime unix php,PHP基于DateTime类解决Unix时间戳与日期互转问题【针对1970年前及2038年后时间戳】...
  6. storm mysql druid_Druid 集成
  7. java 什么是耦合_什么是耦合、解耦
  8. JavaScript函数式编程学习 1
  9. 《Web前端开发修炼之道》-读书笔记CSS部分
  10. 博客园-我的新的开始