在课堂上,我们正在做排序算法,尽管我在谈论它们并编写伪代码时理解得很好,但是在为它们编写实际代码时遇到了问题。
这是我在Python中的尝试:
mylist = [12, 5, 13, 8, 9, 65]
def bubble(badList):
length = len(badList) - 1
unsorted = True
while unsorted:
for element in range(0,length):
unsorted = False
if badList[element] > badList[element + 1]:
hold = badList[element + 1]
badList[element + 1] = badList[element]
badList[element] = hold
print badList
else:
unsorted = True
print bubble(mylist)
现在,(据我所知)该排序正确,但是一旦完成,它就会无限循环。
如何修复此代码,以便函数正确完成并正确排序任何(合理)大小的列表?
PS:我知道我实际上不应该在函数中具有打印功能,而应该返回值,但是我还没有这样做,因为我的代码还没有真正起作用。
慕田峪7331174
慕斯王
德玛西亚99