冒泡排序(Bubble sort)是一个排序算法,可以将一组数列按从小到大或从大到小的顺序排列。
操作步骤
- 从数列的开头开始比较相邻的元素,若前者比后者大(小),则调换二者的位置。
- 依次重复执行1步骤,最终最大(小)的元素排列到了最后。
- 除了已经排好的元素,对剩下的元素,重复进行1,2步骤。
- 直至所有元素排序完毕。
图例
代码实现
void bubble_sort(int arr[], int len)
{
int i,j;
for (i = 0; i < len-1; i++)
for (j = 0; j < len-1-i; j++)
if (arr[j] > arr[j+1])
swap(arr[j], arr[j+1]);
}