1 条题解
-
0
思路分析
1. 任务拆解:
- 读取要插入的整数n和原数列长度m
- 读取已排序的原数列
- 找到n应该插入的位置
- 将插入位置后的元素后移
- 插入n并输出新数列
2. 关键点分析:
- 原数列已排序,需要保持有序性
- 找到最后一个小于n的元素位置ni
- n应该插入在ni+1的位置
- 从末尾开始后移元素,避免数据覆盖
3. 步骤规划: 第一步:读取要插入的数n和数列长度m 第二步:循环读取已排序的原数列 第三步:找到最后一个小于n的元素位置ni 第四步:从m到ni+1将元素后移一位 第五步:在ni+1位置插入n 第六步:输出新数列(长度m+1)
4. 代码对应:
cin>>n>>m:读取插入数和原数列长度- 第一个
for循环:输入已排序的原数列 - 第二个
for循环:查找插入位置ni if(n>a[i]):找到最后一个小于n的位置- 第三个
for循环:从后往前移动元素 a[i+1]=a[i]:元素后移操作a[ni+1]=n:插入新元素- 第四个
for循环:输出新数列
- 1
信息
- ID
- 1424
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 6
- 标签
- (无)
- 递交数
- 499
- 已通过
- 162
- 上传者