#1547. 排序基础
排序基础
1、用冒泡排序算法对数列 5, 6, 2, 4, 3, 1, 7 进行从小到大排序,每一趟都把未排序元素中最大的放到未排序位置的最后面,第二趟排序后的状态为( )。 {{ select(1) }}
- 5 2 4 3 1 6 7
- 2 3 1 4 5 6 7
- 2 1 3 4 5 6 7
- 2 4 3 1 5 6 7
2、要输入一组 0~100 之间的整数,要对这些数进行桶排序。以下是桶排序的代码,在下划线处应填写的代码是( )。
int n, x, b[101] = {};
cin >> n;
for (int i = 1; i <= n; i++)
{
cin >> x;
_______________
}
for (int i = 0; i < 101; i++)
{
for (int j = 1; j <= b[i]; j++)
{
cout << i << ' ';
}
}
{{ select(2) }}
- b[i] = x++;
- b[i]++;
- b[x]++;
- b[x] = i;
3、以下是对数组 a 进行冒泡排序的代码,在下划线处应填写的语句是( )。
int a[10] = {10, 3, 2, 6, 5, 4, 9, 8, 7, 1};
int n =10;
_________________________________
{
for (int j = 0; j < i; j++)
{
if (a[j] > a[j + 1])
{
int t = a[j];
a[j] = a[j + 1];
a[j + 1] = t;
}
}
}
{{ select(3) }}
- for (int i = n - 1; i > 0; i--)
- for (int i = 1; i < n; i++)
- for (int i = n - 1; i > 1; i--)
- for (int i = 1; i <= n; i++)
4、用冒泡排序算法对数列 2,1,6,3,4,5 进行从大到小排序,每一趟排序都把未排序元素中最小的数放到未排序位置的最后面,第二趟排序后的状态为( )。 {{ select(4) }}
- 2 6 3 4 5 1
- 6 5 4 3 2 1
- 6 3 4 5 2 1
- 6 4 5 3 2 1
5、使用排序库函数 sort 对数组 int a[10]的后 6 个元素进行从小到大的排序,以下用法正确的是( )。 {{ select(5) }}
- sort(a[0], a[6]);
- sort(a + 4, a + 9);
- sort(a[4], a[9]);
- sort(a + 4, a + 10);
6、输入一组(不超过 100 个)在 -50~150 之间的整数,对这组数进行排序。以下是桶排序算法的代码,在(1)、(2)下划线处应填写的代码是( )。
int n, x, b[(1)________________] = {};
cin >> n;
for (int i = 1; i <= n; i++)
{
cin >> x;b[x + 50]++;
}
(2)_________________________
{
for (int j = 1; j <= b[i]; j++)
{
cout << i - 50 << ' ';
}
}
{{ select(6) }}
- (1): 101; (2): for (int i = 0; i <= 100; i++);
- (1): 201; (2): for (int i = 0; i <= 100; i++);
- (1): 101; (2): for (int i = 0; i <= 200; i++);
- (1): 201; (2): for (int i = 0; i <= 200; i++);