c++冒泡排序

作者: Lucky宁 | 来源:发表于2017-01-19 14:15 被阅读0次

冒泡排序法是对于数组运用的一个基础体现。中心思想

依次比较相邻的两个数,将小数放在前面,大数放在后面。即首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。重复以上过程,仍从第一对数开始比较(因为可能由于第2个数和第3个数的交换,使得第1个数不再大于第2个数),将小数放前,大数放后,一直比较到最小数前的一对相邻数,将小数放前,大数放后,第二趟结束,在倒数第二个数中得到一个新的最小数。如此下去,直至最终完成排序。(源于百度)

看过许多人的博客中对于冒泡排序的讲解,于是我也开始尝试写出冒泡排序。

先上代码:

代码图

运行结果:

运行结果

我们先来看int main里的代码,程序是从这里开始运行的。

动态内存分配详情请看我前面文章

这里是运用到动态内存分配的知识,不多讲,前面的博客讲过,然后把元素赋给数组,接着往下看,
Sort(pArray, *pcount);
这里是把数组和数组元素数量传进函数,来看Sort()函数,他是把元素进行排序,首先传进两个参数指针arr和count,设定一个整型变量,先把整个数组进行循环,循环count次,此为主循环;定义一个副循环,与主循环的元素进行比较(就是相邻两个数进行比较)。然后进行从小到大的顺序排列。然后运用output()函数输出数组 元素。



冒泡排序的原理就是两两比较,从a[0]到a[N-1]依次比较,同时每次两两比较后,将大的数沉底,并与下一个数进行比较,在把大的数沉底,不断重复直到最后。

**然后进行第二次比较,重复刚才的步骤直到所有的大数沉底位置。
**
**主循环的作用就是定义循环比较的总次数,由输入的数的个数决定。
**
**副循环的作用就是保证在主循环的基础上,依次进行两两比较,并将大的数沉底。
**
**
**
冒泡排序大致就是这样的原理

相关文章

  • 七大排序算法之冒泡排序

    七大排序算法之冒泡排序 @(算法笔记)[排序算法, 冒泡排序, C++实现] 冒泡排序介绍 冒泡排序是七大排序算法...

  • 排序算法

    C++ 冒泡排序 选择排序 变种 插入排序

  • 冒泡排序

    冒泡排序 C++版本 JAVA版本

  • 「C语言冒泡排序」究竟有什么用?为什么每一本C语言教程都有它

    今晚课题:关于冒泡排序的游戏案例讲解 C/C++编程零基础入门学习群:598668498 冒泡排序 冒泡排序(Bu...

  • C++ 常用代码

    vector 迭代器遍历 C++ 函数模板 冒泡排序 快速排序

  • 排序算法详细代码实现

    算法分类 算法时间复杂度 选择排序 插入排序 C++实现 Python实现 冒泡排序 Python实现 归并排序 ...

  • 各种排序算法实现

    C++实现各种排序算法。上张图。 自定义的swap函数。 冒泡排序 插入排序 希尔排序 选择排序 快速排序 归并排...

  • 排序算法1: 冒泡排序算法

    C++ 冒泡排序算法的实例源代码,一些排序方法的代码集锦,该函数模板使用冒泡法对集合元素进行排序,参数说明: co...

  • c++冒泡排序

    冒泡排序法是对于数组运用的一个基础体现。中心思想:依次比较相邻的两个数,将小数放在前面,大数放在后面。即首先比较第...

  • 算法-冒泡排序

    算 法:冒泡排序算法时间复杂度: 冒泡排序算法概述 冒泡排序伪代码 冒泡排序实现 冒泡排序算法概述 冒泡排...

网友评论

    本文标题:c++冒泡排序

    本文链接:https://www.haomeiwen.com/subject/iqsibttx.html