/*
起泡排序算法(冒泡排序算法的改进)
经控制作用的布尔变量改为一个整型变量,指示每一趟排序中进行交换的最后一个记录的位置
并以它作为下一趟起泡排序循环终止的控制值
*/
#include <iostream>
using namespace std;
void bubbleSort(int a[], int n){
int i, j;
int isChange;
isChange = 0;
for(i=0; i<n; i++){
for(j=n-1; j>=isChange; j--){
if(a[j] < a[j-1]){
isChange = j-1;
swap(a[j-1], a[j]);
}
}
}
}
int main(){
int a[] = {4,2,1,3,5};
bubbleSort(a, 5);
for(int i=0; i<5; i++)
cout << a[i] << " ";
cout << endl;
return 0;
}
冒泡排序改写
最新推荐文章于 2025-04-17 11:42:57 发布