1 条题解
-
0
思路分析
1. 任务拆解:
- 读取数字个数n和需要输出的最小数个数k
- 读取n个正整数
- 对数组进行升序排序
- 输出前k个最小的数
2. 关键点分析:
- 使用冒泡排序进行升序排列
- 排序后前k个元素就是最小的k个数
- 允许重复数字,直接按排序后顺序输出即可
- 不需要去重,重复数字可以重复输出
3. 步骤规划: 第一步:读取n和k 第二步:循环读取n个正整数 第三步:使用冒泡排序进行升序排列 第四步:输出前k个元素
4. 代码对应:
cin>>n>>k:读取数字个数和需要输出的最小数个数- 第一个
for循环:输入n个正整数 - 排序双重循环:进行升序冒泡排序
if(a[j]>a[j+1]):将较小值交换到前面- 输出循环:输出前k个最小的数
cout<<a[i]<<" ":输出结果并用空格分隔
- 1
信息
- ID
- 1047
- 时间
- 1000ms
- 内存
- 32MiB
- 难度
- 4
- 标签
- (无)
- 递交数
- 464
- 已通过
- 201
- 上传者