题目信息

题目类型
提高级
题目年份
2022
题目题型
单选题
关 键 词
正整数

题目题干

第 17 题

(2)

  1. #include <iostream>  
  2.  
  3. using namespace std;  
  4.  
  5. const int MAXN = 105;  
  6.  
  7. int n, m, k, val[MAXN];  
  8. int temp[MAXN], cnt[MAXN];  
  9.  
  10. void init()  
  11. {  
  12.     cin >> n >> k; 
  13.     for (int i = 0; i < n; i++) cin >> val[i];  
  14.     int maximum = val[0]; 
  15.     for (int i = 1; i < n; i++)  
  16.         if (val[i] > maximum) maximum = val[i]; 
  17.     m = 1; 
  18.     while (maximum >= k) {  
  19.         maximum /= k; 
  20.         m++; 
  21.     } 
  22. }  
  23.  
  24. void solve()  
  25. {  
  26.     int base = 1; 
  27.     for (int i = 0; i < m; i++) {  
  28.         for (int j = 0; j < k; j++) cnt[j] = 0;  
  29.         for (int j = 0; j < n; j++) cnt[val[j] / base % k]++; 30         for (int j = 1; j < k; j++) cnt[j] += cnt[j - 1];  
  30.         for (int j = n - 1; j >= 0; j--) {  
  31.             temp[cnt[val[j] / base % k] - 1] = val[j];  
  32.             cnt[val[j] / base % k]--;  
  33.         } 
  34.         for (int j = 0; j < n; j++) val[j] = temp[j];  
  35.         base *= k; 
  36.     } 
  37. }  
  38.  
  39. int main()  
  40. {  
  41.     init(); 
  42.     solve(); 
  43.     for (int i = 0; i < n; i++) cout << val[i] << ' ';  
  44.     cout << endl; 
  45.     return 0; 

假设输入的 n 为不大于 100 的正整数,k 为不小于 2 且不大于 100 的正整数,val[i]在int 表示范围内,完成下面的判断题和单选题:XoL100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

 判断

这是一个不稳定的排序算法。( )XoL100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

A.正确
B.错误
 
判断

该算法的空间复杂度仅与 n 有关。( )XoL100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

A.正确
B.错误
 
 判断

该算法的时间复杂度为 O(m(n + k))。( )XoL100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

A.正确
B.错误
 
 单选

当输入为“5 3 98 26 91 37 46”时,程序第一次执行到第 36 行,val[]数组的内容依次为( )。XoL100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

A.91 26 46 37 98
B.91 46 37 26 98
C.98 26 46 91 37
D.91 37 46 98 26
 
 单选

若 val[i]的最大值为 100,k 取( )时算法运算次数最少。XoL100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

A.2
B.3
C.10
D.不确定
 
第27题 单选

当输入的 k 比 val[i]的最大值还大时,该算法退化为( )算法。XoL100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

A.选择排序
B.冒泡排序
C.计数排序
D.桶排序
 
 

答案解析

相关题目

第 18 题 (3) #include <iostream>   #include <algorithm>     using namespace std;     cons
第 17 题 (2) #include <iostream>     using namespace std;     const int MAXN = 105;     int n, m
第 16 题 (1) #include <iostream>   #include <string>   #include <vector>      using 
第 15 题 ack 函数在输入参数“(2,2)”时的返回值为()。 unsigned ack(unsigned m, unsigned n) {      if (m == 0) return 
第 14 题 以比较为基本运算,在 n 个数的数组中找最大的数,在最坏情况下至少要做( )次运算。 A.n/2 B.n-1 C.n D.n+1
第 13 题 对于给定的 n,分析以下代码段对应的时间复杂度,其中最为准确的时间复杂度为( )。 int i, j, k = 0; for (i = 0; i < n; i++) { f
第 12 题 给定地址区间为 0~9 的哈希表,哈希函数为 h(x) = x % 10,采用线性探查的冲突解决策略(对于出现冲突情况,会往后探查第一个空的地址存储;若地址 9 冲突了则从地址 0 重新
第 11 题 小明希望选到形如“省 A·LLDDD ”的车牌号。车牌号在“·”之前的内容固定的 5 位号码中,前 2 位必须是大写英文字母,后 3 位必须是阿拉伯数字(L代表 A 至 Z,D 表示
第 10 题 共有 8 人选修了程序设计课程,期末大作业要求由 2 人组成的团队完成。假设不区分每个团队内 2 人的角色和作用,请问共有多少种可能的组队方案。( )。 A.28 B.32 C.
第 9 题 每个顶点度数均为 2 的无向图称为“2 正规图”。由编号为从 1 到 n 的顶点构成的所有 2 正规图,其中包含欧拉回路的不同 2 正规图的数量为( )。 A.n! B.(n-1)!

提示声明

  • 免责声明:本站资源均来自网络或者用户投稿,仅供用于学习和交流:如有侵权联系删除!
  • 温馨提示:本文属于积分文章,需要充值获得积分或升级VIP会员,也可在会员中心投稿获取。

猜你喜欢