【算法分析】
冒泡排序是一种最简单的交换排序方法,它通过两两比较相邻记录的关键字,如果为逆序,则进行交换,从而使关键字小的记录如气泡一般逐渐往上“漂浮”,或者使关键字大的记录如石块一样逐渐向下“坠落”。
【算法代码】
#include <bits/stdc++.h>
using namespace std;
void bubbleSort(vector<int> &a) {
int t;
for(int i=1; i<a.size(); i++) {
for(int j=0; j<a.size()-i; j++) {
if(a[j]>=a[j+1]) {
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
}
int main() {
vector<int> v;
int n;
cin>>n;
for(int i=1; i<=n; i++) {
int x;
cin>>x;
v.push_back(x);
}
bubbleSort(v);
for(int i=0; i<v.size(); i++) {
cout<<v[i]<<" ";
}
return 0;
}
/*
in:
8
49 38 65 97 76 13 27 49
out:
13 27 38 49 49 65 76 97
*/