算法简介



冒泡排序(Bubble Sort)


冒泡排序的核心思想是:依次将相邻的两个数进行比较,将不按照规定顺序排列的数进行交换。对n个数排序需要循环n-1趟,每一趟循环都从第一个数开始比较相邻的两个数,将较小的数换到前面,较大的数换到后面。但是它每一趟只能将一个数字归位。

			
void bubble(int a[],int n)
{
    int i,j;
    for(i=1;i<=n-1;i++) //n个数排序,进行n-1趟排序
    {
        for(j=1;j<=n-i;j++) //从第一位开始比较,直到最后一个没有归位的数字
        {
            if(a[j]>a[j+1]) //比较大小,看是否需要交换
            {
                t=a[j];
                a[j]=a[j+1];
                a[j+1]=t;
            }
        }
    }
}
			
		




可视化