您的位置:首页 > 其它

排序二之冒泡排序

2016-02-03 11:07 288 查看
冒泡排序通过多次比较和交换来实现排序:

1:对数组的各数据,依次比较相邻的两个元素的大小;

2:如果前面的数据大于后面的数据,就交换这两个数据经过第一轮多次比较排序后,便可把最小的数据排好。

3:然后再用同样的方法把剩下的数据组个进行比较,最后便可按照从小到大的顺序排好数组中各数据的顺序。
#include<stdio.h>
#include<stdlib.h>
#include<time.h>

#define SIZE 10
int i,j;
void BubbleSort(int *a,int len)
{
int k,temp;
for(i=0;i<len-1;i++)
{
for(j=len-1;j>i;j--)
{
if(a[j-1]>a[j])
{
temp=a[j-1];
a[j-1]=a[j];
a[j]=temp;
}
}
}
}
int main()
{
int shuzu[SIZE];
srand(time(NULL));
for(i=0;i<SIZE;i++)
{
shuzu[i]=rand()/1000+100;
}
printf("排序前的数组为:\n");
for(i=0;i<SIZE;i++)
printf("%d ",shuzu[i]);
printf("\n");
BubbleSort(shuzu,SIZE);
printf("排序后的数组为:\n");
for(i=0;i<SIZE;i++)
printf("%d ",shuzu[i]);
printf("\n");
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: