Python 实现有序数组插入元素算法
可以使用插入排序的思想,从序列末尾开始比较 x 与每个数的大小,直到找到一个数 a 比它小或相等。然后将 a 及其后面的所有数后移一位,再将 x 插入到 a 的位置上即可。
具体实现可以参考下面的代码(Python 语言):
n = int(input()) # 输入原序列长度
a = list(map(int, input().split())) # 输入原序列
x = int(input()) # 输入要插入的数
# 从末尾开始比较 x 与每个数的大小
for i in range(n-1, -1, -1):
if a[i] > x:
a[i+1] = a[i] # 将 a 及其后面的所有数后移一位
else:
a[i+1] = x # 将 x 插入到 a 的位置上
break
else: # 如果 x 比原序列中所有数都小,则插入到序列最前面
a[0] = x
print(' '.join(map(str, a))) # 输出新的有序序列
原文地址: http://www.cveoy.top/t/topic/mJFS 著作权归作者所有。请勿转载和采集!