本题要求从键盘读入n个整数,对这些数做选择排序。输出选择排序每一步的结果和最终结果。 输入格式: 输入的第一行是一个正整数n,表示 在第二行中会有n个整数。 输出格式: 输出选择排序每一步的结果和最终结果。
时间: 2024-02-05 13:14:10 浏览: 43
给定N个不同的整数,要求对这N个整数按如下规则排序并输出
5星 · 资源好评率100%
以下是选择排序的Python代码实现,可以根据题目要求在每一步打印中间结果和最终结果。
```python
# 选择排序函数
def selection_sort(arr):
n = len(arr)
for i in range(n):
# 找到未排序部分的最小元素
min_idx = i
for j in range(i+1, n):
if arr[j] < arr[min_idx]:
min_idx = j
# 将最小元素与未排序部分的第一个元素交换
arr[i], arr[min_idx] = arr[min_idx], arr[i]
# 打印中间结果
print(" ".join(str(x) for x in arr))
return arr
# 读入数据
n = int(input())
arr = list(map(int, input().split()))
# 进行选择排序
selection_sort(arr)
# 打印最终结果
print(" ".join(str(x) for x in arr))
```
例如,对于输入样例:
```
5
3 1 4 2 5
```
输出结果为:
```
1 3 4 2 5
1 2 4 3 5
1 2 3 4 5
1 2 3 4 5
```
阅读全文