输入n(1<=n<=10)冒泡排序算法。 个整数,将它们从小到大排序后输出, 要求编写函数bubble()实现
时间: 2024-12-11 13:39:18 浏览: 23
冒泡排序是一种简单的排序算法,它的基本思想是重复地遍历待排序的序列,比较相邻元素,如果前一个比后一个大,则交换这两个位置的值。这个过程会反复进行,直到整个序列有序为止。对于输入的 n 个整数,以下是 Python 中使用冒泡排序算法的一个函数实现:
```python
def bubble(arr):
n = len(arr)
# 遍历所有数组元素
for i in range(n):
# 标记是否有交换发生,如果没有交换则说明已经排序完成
swapped = False
# 从第一个到最后一个元素
for j in range(0, n-i-1):
# 如果当前元素大于下一个元素,交换它们
if arr[j] > arr[j+1]:
arr[j], arr[j+1] = arr[j+1], arr[j]
swapped = True
# 如果一轮循环下来没有交换,说明已经有序,提前结束
if not swapped:
break
return arr
# 示例:调用函数并打印结果
numbers = [int(input(f"请输入第{i+1}个数字: ")) for i in range(int(input("请输入总共有多少个数字: ")))]
sorted_numbers = bubble(numbers)
print("排序后的数字:", sorted_numbers)
阅读全文