冒泡是一个程序员接触最早的一个排序算法,简单粗暴。
冒泡排序的核心思想就是:依次比较相邻的两个数,如果第一个数比第二个大就交换。
程序还是要自己动手写,这样理解得才快。
~~~
#include "stdafx.h"
#include <iostream>
#include <string>
#define SIZE(A) sizeof(A)/sizeof(*A)
using namespace std;
void bubbleSort(int a[],int size)
{
// 两个循环来比较相邻的两个数,如果前一个比后面一个大就交换
for (int i=0;i<size;i++)
{
for (int j=0;j<i;j++)
{
if (a[i]>a[j])
{
int temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
}
int main() {
int a[] = {2,6,8,1,0,3,4};
int size = SIZE(a);
for (int i=0;i<size;i++)
{
cout<<a[i]<<" ";
if (i==size-1)
cout<<endl;
}
// 调用冒泡排序
bubbleSort(a,size);
for (int i=0;i<size;i++)
{
cout<<a[i]<<" ";
if (i==size-1)
cout<<endl;
}
system("pause");
return 0;
}
~~~
排序的结果:
![](https://box.kancloud.cn/2016-08-19_57b6ce7dcab1d.jpg)
- 前言
- C++读取配置文件
- 结构体内存对齐后所占内存空间大小的计算
- do{}while(0)的妙用
- Cocos2dx实现翻牌效果(CCScaleTo与CCOrbitCamera两种方式)
- C++的error LNK2019: 无法解析的外部符号编译错误
- Java使用JNI调用C++的完整流程
- strupr与strlwr函数的实现
- strcat函数实现
- Windows上VS使用pthread重温经典多线程卖票(pthreads-w32-2-8-0-release.exe)(windows上使用pthread.h)
- pthread的pthread_join()函数理解实验
- 顺序存储结构和链式存储结构的选择
- C语言冒泡排序
- VS看反汇编、寄存器、内存、堆栈调用来学习程序设计
- 快速排序
- C++的构造函数初始化列表
- fatal error C1083: 无法打开包括文件: “SDKDDKVer.h”: No such file or directory
- C++实现简单的String类