[英]Bubble sort not correctly sorting list
我写了下面的冒泡排序,为什么 output 不会得到正确的结果?
number = [8,6,4,5,7]
while x == True:
for i in range(0,len(number)-1):
if number[i]>number[i+1]:
x == True
number[i],number[i+1]=number[i+1],number[i]
x = False
print(number)
while
循环结束时设置x = False
,因此循环只运行一次,将其设置在循环的第一行。x == True
而不是x = True
,因此您的循环只会运行一次,因为x
仍然是False
。x = True
,因此它甚至不会进入循环。更改所有这些将导致您的代码正常工作:
>>> x = True
>>> number = [8,6,4,5,7]
>>> while x == True:
... x = False
... for i in range(0,len(number)-1):
... if number[i]>number[i+1]:
... x = True
... number[i],number[i+1]=number[i+1],number[i]
...
>>> print(number)
[4, 5, 6, 7, 8]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.