帮我写个冒泡排序算法
当你提到“冒泡排序算法”,我假设你是指使用Python编写冒泡排序算法。下面是一个示例代码:
def bubble_sort(arr):
n = len(arr)
# 遍历所有数组元素
for i in range(n):
# 最后i个元素已经排好序,无需再比较
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(arr[i], end=" ")
这段代码使用了两个嵌套的循环,外层循环控制遍历次数,内层循环用来比较相邻元素并交换位置。在每次内层循环结束后,最大的元素都会“冒泡”到最后的位置,因此每次外层循环都可以减少一个元素的比较次数。
以上代码的输出结果为:
排序后的数组:
11 12 22 25 34 64 90
希望对你有所帮助
原文地址: http://www.cveoy.top/t/topic/hyCP 著作权归作者所有。请勿转载和采集!