有一个已按升序排列的数列,现要将键盘输入的一个数插入到该数列中,要求按原来的排序规律插入
时间: 2024-03-24 20:39:04 浏览: 100
这个问题可以通过二分查找来解决。具体步骤如下:
1. 读入要插入的数。
2. 对已有的数列进行二分查找,找到第一个比要插入的数大的数的位置。
3. 将要插入的数插入到该位置。
4. 输出插入后的数列。
代码实现如下:
```python
# 读入要插入的数
num = int(input())
# 已有的数列
nums = [1, 3, 5, 7, 9]
# 二分查找
left = 0
right = len(nums) - 1
while left <= right:
mid = (left + right) // 2
if num < nums[mid]:
right = mid - 1
else:
left = mid + 1
# 将要插入的数插入到该位置
nums.insert(left, num)
# 输出插入后的数列
print(nums)
```
假设要插入的数为 6,运行结果为:
```
[1, 3, 5, 6, 7, 9]
```
阅读全文