您的位置:首页 > 其它

排序算法之冒泡排序

2017-03-27 23:17 232 查看
冒泡排序是比较经典的一种交换排序方法,但是它在工程中的使用不多,之适用于较小规模的数据。

冒泡排序主要是通过比较交换使得小数逐渐上浮,实现排序的。

例如:a[10]={3,5,6,7,1,2,9,0,4,8}

第一步:首先把数组中最小的放到第一个位置,

1:比较第9,10位数,小的放前边大的放后边

2:比较第8,9位数,小的放前边大的放后边

.....................

10:比较第1,2位数,小的放前边大的放后边

第二部:把后边的9个数中较小的放到第二个位置

1:比较第9,10位数,小的放前边大的放后边

2:比较第8,9位数,小的放前边大的放后边

.....................

9:比较第2,3位数,小的放前边大的放后边

第三部:把后边的8个数中较小的放到第三个位置

1:比较第9,10位数,小的放前边大的放后边

2:比较第8,9位数,小的放前边大的放后边

.....................

8:比较第3,4位数,小的放前边大的放后边

.....................................
第十部:把后边的8个数中较小的放到第三个位置

1:比较第9,10位数,小的放前边大的放后边

2:比较第8,9位数,小的放前边大的放后边

#include<stdio.h>
int main()
{
int a[10],TEMP;
int i,j;
for (i=0;i<10;i++)
{
scanf("%d",&a[i]);
}

for (i=0;i<10;i++)
{
for (j=9;j>i;j--)
{
if (a[j<a[j-1]])
{
TEMP=a[j];
a[j]=a[j-1];
a[j-1]=TEMP;
}
}
}

for (i=0;i<10;i++)
{
printf("the sorted number:%d\n",a[i]);
}
return 0;
}
结果如下:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息