📅  最后修改于: 2023-12-03 15:12:46.063000             🧑  作者: Mango
本题是门|门 CS 1997的第三个问题。该题目要求对输入的一组整数进行排序,并输出排序结果。
输入共两行,第一行为一个整数n,表示待排序的数字个数,接下来一行有n个整数。
样例输入:
5
2 3 1 4 5
输出共一行,为排序后的n个数字,每个数字之间用空格隔开。
样例输出:
1 2 3 4 5
这个问题使用一般的排序算法即可解决。最简单的算法是冒泡排序或选择排序,本文仅以选择排序为例。
n = int(input())
data = list(map(int, input().split()))
for i in range(n):
min_index = i
for j in range(i+1, n):
if data[j] < data[min_index]:
min_index = j
data[i], data[min_index] = data[min_index], data[i]
print(' '.join(map(str, data)))
以上代码实现了选择排序的逻辑,其中map函数用于将整数转换为字符串,方便join操作。