【发布时间】:2022-01-05 08:26:26
【问题描述】:
我是编程初学者,我的问题是: 为什么我需要 2 个“for 循环”才能工作? 感谢您提前提供任何答案^^
# Bubble sort
a = [2092, 8966, 564331, 989]
laenge = len(a)
for i in range(1,laenge):
for j in range(0,laenge-i):
if a[j] > a[j+1]:
tempdata = a[j]
a[j] = a[j+1]
a[j+1] = tempdata
print (a)
print (" Surprise monkey")
【问题讨论】:
-
因为冒泡排序算法就是这样工作的,所以您必须对列表执行多次遍历。您可能想阅读:en.wikipedia.org/wiki/Bubble_sort
-
每个内部循环完成都会使下一个最大元素“浮动”到它的位置(因此是算法名称)。您需要为每个元素重复它。
-
因为这是一种非常低效的排序方式。
标签: python bubble-sort