#include <iostream>
using namespace std;
void swap(int& x,int& y)
{
int iTemp = x;
x = y;
y = iTemp;
}
void bubble_sort(int data[],int len)
{
int i,j,iTemp;
bool isChanged = false;
for(i = 0;i < len -1;i++){
isChanged = false;
for(j = len -2;j >= i;j--){
if(data[j+1] < data[j]){//冒泡排序,相邻两个数相比较,将小点的数换至前面
isChanged = true;
swap(data[j+1],data[j]);
}
}
if(!isChanged)//若是一轮循环都没有互换,则表示已经排好序,退出循环
break;
}
}
void print(int data[],int len)
{
for(int i = 0;i < len;i++){
cout << data[i] << " ";
}
cout << endl;
}
int main()
{
int data[] = {4,2,3,7,6,1,5,9,10,8};
bubble_sort(data,sizeof(data)/sizeof(int));
print(data,sizeof(data)/sizeof(int));
return 0;
}
冒泡排序
最新推荐文章于 2022-04-29 23:24:15 发布