前言
简单的冒泡排序函数,假设一串数组从大到小排序,现如今想利用C语言实现从小到大的排序。
#include <stdio.h>
void bubble_sort(int arr[], int sz)
{
int i = 0;
//趟数
for (i = 0; i < sz -1; i++)
{
//比较次数,逐一递减
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;
}
}
}
}
int main()
{
int arr[] = { 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 };
int sz = sizeof(arr) / sizeof(arr[0]);
//冒泡函数
bubble_sort(arr, sz);
int i = 0;
//输出
for (i = 0; i < sz; i++)
{
printf("%d ", arr[i]);
}
return 0;
}
结果如图
总结
比较简易的排序算法,还需要更深层次的学习。