冒泡法
原理是遍历文件,如果相邻的两个元素大小不符合预期,则进行交换,重复直到有序为止。
第一遍时,从左到右比较相邻两个元素,当两个元素中右边的元素较小时,将其与左边的元素进行交换。直到最终将最大的元素移到队列的最右边。
第二遍时,将次大的元素放到队列右边的第二位中............
void bubb(int a[],int n)
{
int i,j=0;
for(i=0;i<n-1;i++)//n个元素,只需要n-1趟冒泡
{
for(j=1;j<n-i;j++)//j=1,为了和前一个a[j-1]进行比较。n-i表示每趟排序都有一个元素被放置到后面正确的位置,之后不需移动。
{
if(a[j-1] > a[j])
swap(&a[j-1],&a[j]);
}
}
return;
}
![](https://i-blog.csdnimg.cn/blog_migrate/ce0fa3411d591caf3ef4457cd9392c7a.png)