冒泡排序:
两两比较,把最大的数往后排,小的逐渐冒泡
n个元素要比较n-1趟,每趟比较n-1-i次,i代表当前是第几趟
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
void Bubble_sort(int*a,int len)
{
for(int i=0;i<len-1;i++)
{
┊ for(int j=0;j<len-i-1;j++)
┊ {
┊ ┊ if(a[j]>a[j+1])
┊ ┊ {
┊ ┊ ┊ int tmp=a[j];
┊ ┊ ┊ a[j]=a[j+1];
┊ ┊ ┊ a[j+1]=tmp;
┊ ┊ }
┊ }
}
}
int main()
{
int i;
int arry[10000]={0};
srand(time(NULL));
for(i=0;i<10000;i++)
{
┊ arry[i]=rand()%1000;
}
int length=sizeof(arry)/sizeof(int);
Bubble_sort(arry,length);
for(i=0;i<sizeof(arry)/sizeof(arry[0]);i++)
{
┊ printf("%d ",arry[i]);
}
return 0;
}
|