#include <iostream>
using namespace std;
const int N = 1010;
int a[N];
void sort(int a[], int l, int r)
{
for(int i = l ; i <= r ; i ++)
for(int j = i + 1 ; j <= r ; j ++)
if(a[j] < a[i])
swap(a[i] , a[j]);
}
int main()
{
int n , l , r;
cin >> n >> l >> r;
for(int i = 0 ; i < n ; i ++)
cin >> a[i];
sort(a , l , r);
for(int i = 0 ; i < n ; i ++)
cout << a[i] << ' ';
return 0;
}
选择排序较为简单,从第一个元素开始,每次遍历数组,找到当前序列中最小的元素,放到遍历数组的起始点,利用双循环,第一层循环遍历的是需要排序的数,第二层循环是比较当前起点的数与后面数的大小,找到最小元素,放到第二层遍历的起点位置