一维数组长度为10,利用排序算法生成由小到大的顺序,输出有序数组,再由键盘输出一个整数,插入已排好的数组中,要求仍然有序(由小到大),输出新生成的有序数组。
时间: 2023-06-12 07:03:14 浏览: 68
以下是基于插入排序的实现方式,可以实现对一个一维数组的排序和插入操作:
```python
# 定义插入排序函数
def insertion_sort(arr):
for i in range(1, len(arr)):
key = arr[i]
j = i - 1
while j >= 0 and key < arr[j]:
arr[j + 1] = arr[j]
j -= 1
arr[j + 1] = key
# 定义插入函数
def insert(arr, num):
arr.append(num)
insertion_sort(arr)
# 测试代码
if __name__ == '__main__':
arr = [10, 5, 8, 3, 2, 6, 4, 7, 9, 1]
insertion_sort(arr)
print("排序后的数组:", arr)
num = int(input("请输入要插入的整数:"))
insert(arr, num)
print("插入后的数组:", arr)
```
运行结果如下:
```
排序后的数组: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
请输入要插入的整数: 11
插入后的数组: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
```
这里使用了插入排序的方式对数组进行排序,然后定义了一个插入函数,它通过先将要插入的整数添加到数组末尾,然后再进行一遍排序,保证插入后仍然是有序的。