当我创建bubble()时,它可以对矿山列表进行排序,但是当我在def函数之外给出while循环时,它不会对列表进行排序。
在python空闲状态下“}}”-是“ >>>”。
对我来说问题似乎是,该while循环在def函数中起作用,而在外部不起作用。
}}def iftrue(a):
for i in range(len(a)-1):
if a[i]>a[i+1]:
return False
return True
}}def bubble(a):
c=0
while not iftrue(a):
for i in range(len(a)-1):
if a[i]>a[i+1]:
a[i],a[i+1] = a[i+1],a[i]
c+=1
return a,c
}} bubble([1,2,3,4,5,6,5,5,4,3,2,1])
([1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 5, 6], 30)
}} a
[1, 2, 3, 4, 5, 5, 5, 6, 4, 3, 2, 1]
}} while not iftrue(a):
for i in range(len(a)-1):
if a[i]>a[i+1]:
a[i],a[i+1] = a[i+1],a[i]
}} a
[1, 2, 3, 4, 5, 5, 5, 6, 4, 3, 2, 1]