冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法,以下将用C实现相关过程:
//排序函数主体
void bubble_sort(int* arr, int sz)
{
int i = 0 ;
for (i = 0; i < sz-1;i++)//每一个字符,最后一个不用排序
{
int flag = 1;//flag的赋值时做出的优化,有序的时候,赋值1
int j = 0;
for (j=0;j< sz-1-i;j++)//挨个比较
{
if(arr[j]>arr[j+1])
{
int tmp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = tmp;
flag = 0;//如果无序则赋值0
}
}
if (flag == 1)
{
break;
}
}
}
int main()
{
//需要排序的数组
int arr[] = {9,8,7,6,5,4,3,2,1,0};
//获得数组数目
int sz = sizeof(arr) / sizeof(arr[0]);
int i = 0;
//排序函数引入
bubble_sort(&arr,sz);
//对排序后的文字数组进打印
for (i = 0; i < sz; i++)
{
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}