一、什么是冒泡排序
冒泡排序是一种简单的排序算法,它重复地遍历要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。
二、冒泡排序代码及大量注释
#include <stdio.h>
//函数定义了一个冒泡排序算法,接受一个整型数组和数组的长度作为参数。
void bubble_sort(int *array,int length)
{
//遍历length轮,每轮都会将最大的数移到正确的位置。
for(int i = 0;i < length-1;i++)
{
//每一轮遍历length-i次
for(int j = 0; j < length-i-1;j++)
{
//判断当前元素是否大于下一个元素,如果是,则交换它们的位置。
if(array[j] > array[j+1])
{
int temp = array[j];
array[j] = array[j+1];
array[j+1] = temp;
}
}
}
}
int main()
{
int array[] = {8,5,9,2,7};
bubble_sort(array,5);
for(int i = 0;i < 5; i++)
printf("%d\t",array[i]);
printf("\n");
return 0;
}