AcWing 818. 数组排序
原题链接
简单
作者:
笙夜萤火明渊
,
2024-12-17 19:09:48
,
所有人可见
,
阅读 2
#include<iostream>
using namespace std;
void sort(int a[], int l, int r) {
for (int i = l; i <= r; i++) { // 外层循环,遍历数组的每个元素,开始从l到r
for (int j = i + 1; j <= r; j++) { // 内层循环,从当前i的下一个元素j开始,到r
if (a[i] > a[j]) { // 如果a[i]大于a[j],说明这两个元素需要交换
swap(a[i], a[j]); // 调用swap函数交换a[i]和a[j]的值
}
}
}
}
int main() {
int a[1000]; // 声明一个大小为1000的整型数组a,用于存储输入的数字
int n, r, l; // 声明三个整型变量n, r, l,分别表示数组的长度n,以及排序的范围l和r
cin >> n >> l >> r; // 从标准输入读取n(数组元素个数)、l和r(排序的起始和结束索引)
for (int i = 0; i < n; i++) { // 循环读取n个整数并存入数组a
cin >> a[i]; //
sort(a, l, r); // 调用sort函数,对数组a从l到r索引范围内的元素进行排序
for (int i = 0; i < n; i++) { // 循环输出排序后的数组
cout << a[i] << " ";
}
return 0;
}