作业6有一个已经排好序的数组。现输入一个数要求按原来的规律将它插入数组中。例如571133010 作为占位符。
假设已有排好序的数组为arr,新输入的数为num,可以按照以下步骤插入num:
- 遍历数组arr,找到第一个大于等于num的位置index;
- 将num插入到数组arr的index位置上;
- 如果num插入到了数组的最后一个位置之后,那么需要将num替换占位符0的位置。
具体代码实现如下:
arr = [5, 7, 11, 33, 0] # 假设已有排好序的数组
num = 20 # 新输入的数
index = len(arr) # 初始化index为数组的长度
for i in range(len(arr)):
if arr[i] >= num:
index = i
break
arr.insert(index, num)
if arr[-1] == 0:
arr.pop()
print(arr) # 输出插入后的数组
输出结果为:[5, 7, 11, 20, 33]。
原文地址: https://www.cveoy.top/t/topic/bQdL 著作权归作者所有。请勿转载和采集!