排序算法—冒泡排序
程序员文章站
2022-06-05 12:37:09
...
交换类排序 —— 冒泡排序:相邻数据比较若逆序则交换,经过n-1趟比较交换后,逐渐将小数据冒到数组的前部,大的数据则陈到数组的后部。
冒泡排序的本质在于交换,即每次通过交换的方式把当前剩余元素的最大值移动到一端,而当剩余元素减少为0时, 排序结束。
代码实现如下:
void bubble_sort(int a[],int len){
for(int i=0;i<len-1;i++){//外层循环控制趟数,总趟数为n-1
for(int j=0;j<len-1-i;j++){//内层循环为当前第i趟所需要比较的次数
int t;
if(a[j]>a[j+1]){
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
//swap(a[j],a[j+1]);也可以直接利用swap进行交换
}
}
}
}