冒泡排序(BubbleSort)是左右交换排序(比大或者小),可以一遍就找到最大(最小)值。
如下图所示,两个之间进行交换,然后向下传递
C++代码如下:
#include <iostream>
using namespace std;
void BubbleSort(int list[], int n);
int main()
{
int a[] = {2,4,6,8,0,1,3,5,7,9};
BubbleSort(a,10);
for(int k=0; k<10; k++)
cout << a[k] << " ";
cout << endl;
return 0;
}
void BubbleSort(int list[], int n)
{
// n=10
// 0 <9
for(int i=0; i<n-1; i++){
for(int j=0; j<n-i-1;j++){
if(list[j] > list[j+1])
std::swap(list[j],list[j+1]);
}
}
}