一、冒泡排序原理
冒泡排序(Bubble Sort)是一种较简单的排序算法,其原理是临近的数字两两进行比较,按照从小到大或者从大到小的顺序进行交换,这样一趟过去后,最大或最小的数字被交换到了最后一位,然后再从头开始进行两两比较交换,直到倒数第二位时结束。
二、冒泡排序实例
#include <stdio.h>
void Bubble_Sort(int array[], int n)
{
int i, j;
int tmp;
for(i=0; i<n-1; i++)
{
for(j=0; j<n-1-i; j++)
{
if(array[j] > array[j+1])
{
tmp = array[j];
array[j] = array[j+1];
array[j+1] = tmp;
}
}
}
}
int main(int argc, char **argv)
{
int i;
int array [10] = {12,47,31,25,46,16,15,26,42,37};
printf("Before bubble sort:");
for(i=0; i<10; i++)
{
printf("%d\t", array[i]);
}
printf("\r\n\r\n");
Bubble_Sort(array, 10);
printf("After bubble sort:");
for(i=0; i<10; i++)
{
printf("%d\t", array[i]);
}
printf("\r\n");
return 0;
}