用python写个冒泡程序
时间: 2024-05-02 14:21:20 浏览: 21
当然可以!这是一个冒泡排序的 Python 代码例子:
```
def bubble_sort(nums):
# 定义一个交换函数,用于交换列表中的两个元素
def swap(i, j):
nums[i], nums[j] = nums[j], nums[i]
# 双重循环遍历列表,每一轮循环都会找出最大的数并将其放在末尾
for i in range(len(nums)):
for j in range(i + 1, len(nums)):
if nums[j] < nums[i]:
swap(i, j)
return nums
print(bubble_sort([5, 2, 1, 8, 4])) # 输出 [1, 2, 4, 5, 8]
```
希望这个例子能帮到你!
相关问题
用Python 写个冒泡程序
好的,以下是 Python 冒泡排序程序的示例:
```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]
arr = [64, 34, 25, 12, 22, 11, 90]
bubble_sort(arr)
print("排序后的数组:")
for i in range(len(arr)):
print("%d" % arr[i])
```
上述程序定义了一个名为 `bubble_sort` 的函数,用于实现冒泡排序。输入参数 `arr` 为待排序的数组。程序通过两个循环来实现冒泡排序,其中第一个循环用于遍历整个数组,第二个循环用于每次冒泡的比较和交换。最后,程序输出排序后的数组。
以上是冒泡排序的一个简单实现,实际应用中可能需要考虑更多的情况,例如对重复元素的处理等。
用Python写一个冒泡程序
好的,以下是用 Python 实现的冒泡排序程序:
```
def bubble_sort(arr):
n = len(arr)
for i in range(n):
# 设定一个标记,若为True,则表示此次循环没有进行交换,也就是待排序列已经有序,排序已经完成。
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
# 如果标记为False,说明排序已经完成
if not swapped:
break
return arr
# 测试数组
arr = [64, 34, 25, 12, 22, 11, 90]
print("排序前:", arr)
bubble_sort(arr)
print("排序后:", arr)
```
这是一个最基本的冒泡排序程序。它通过比较相邻元素的大小,不断交换位置,使得序列中的最大元素逐渐“浮”到最后面。
阅读全文