编写排序算法,算法无要求。要求将排序单独写成一个函数,n个整数在主函数中输入 最后在主函数中输出
时间: 2024-10-09 14:11:20 浏览: 42
编写一个简单的排序算法示例,这里我们以冒泡排序为例,这是一个直观但效率较低的排序方法。我们将创建一个名为`bubble_sort`的函数,它接受一个包含n个整数的列表作为输入,并返回排序后的列表。
```python
def bubble_sort(arr):
n = len(arr)
# 遍历所有数组元素
for i in range(n):
# 每轮遍历都将最大的元素“浮”到末尾
for j in range(0, n-i-1):
if arr[j] > arr[j+1]:
# 如果当前元素大于下一个,交换它们的位置
arr[j], arr[j+1] = arr[j+1], arr[j]
return arr
# 主函数示例
def main():
# 用户输入的n个整数,假设已经存储在一个名为numbers的列表中
numbers = [int(input(f"请输入第{i+1}个数字: ")) for i in range(int(input("请输入数字的数量: ")))]
# 调用排序函数并打印结果
sorted_numbers = bubble_sort(numbers)
print("排序后的数字为:")
for num in sorted_numbers:
print(num)
if __name__ == "__main__":
main()
```
在这个例子中,用户需要在主函数中手动输入n个整数,然后排序算法会处理这些数据。如果你想让程序自动获取输入,可以考虑从文件、控制台输入或者其他来源读取数据。请注意,冒泡排序并不是最高效的排序算法,对于大规模数据,可以选择快速排序、归并排序等更高效的方法。
阅读全文