题解 | #输入整型数组和排序标识
输入整型数组和排序标识,对其元素按照升序或降序进行排序
https://www.nowcoder.com/practice/dd0c6b26c9e541f5b935047ff4156309
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
//方法1
// void mySort(vector<int>&v, int a) {
// //升序
// sort(v.begin(), v.end());
// //降序
// if (a == 1)
// reverse(v.begin(), v.end()); //将数组反转
// }
//方法2
void mySort(vector<int>&x, int b) {
//升序,冒泡排序
for (int i = 0; i < x.size(); i++) {
for (int j = 0; j+1 < x.size(); j++) {
if (b == 0) {
if (x[j] > x[j + 1]) {
swap(x[j], x[j+1]);
}
}
else {
if (x[j] < x[j + 1]) {
swap(x[j], x[j+1]);
}
}
}
}
}
int main() {
int n;
cin >> n;
vector<int>v(n);
for (int i = 0; i < n; i++) {
cin >> v[i];
}
int x;
cin >> x;
mySort(v, x);
for (int i = 0; i < v.size(); i++)
cout << v[i] << ' ';
return 0;
}
