直接插入排序 输入n(n<20)个整数,输出其升序排序的结果。 输入说明: 第一行输入n 第二行输入n个整数 输入说明: 输出n个整数升序排序的结果 输入示例: 5 3 2 1 5 4 输出示例: 1 2 3 4 5
时间: 2023-11-27 15:53:02 浏览: 74
直接插入排序,快速排序,归并排序,堆排序,基数排序,计数排序。
以下是直接插入排序的 Python 代码实现:
```python
n = int(input()) # 输入 n
nums = list(map(int, input().split())) # 输入 n 个整数
for i in range(1, n):
key = nums[i]
j = i - 1
while j >= 0 and nums[j] > key:
nums[j + 1] = nums[j]
j -= 1
nums[j + 1] = key
print(' '.join(map(str, nums)))
```
解释一下:
首先读入输入的 n 和 n 个整数,存放在一个列表 `nums` 中。
然后从第一个数开始,将它看作已排序序列的最后一个元素,将它的前面的元素依次与它比较,如果比它大就向后移动一位。重复这个过程直到找到一个比它小的位置,然后插入到这个位置。
最后输出排序后的结果。
阅读全文