相关疑难解决方法(0)

泡泡排序作业

在课堂上我们正在做排序算法,虽然我在谈论它们和编写伪代码时理解它们很好,但我在编写实际代码时遇到了问题.

这是我在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)
Run Code Online (Sandbox Code Playgroud)

现在,这(据我所知)正确排序,但一旦完成它就会无限循环.

如何修复此代码以使函数正确完成并正确排序任何(合理)大小的列表?

PS我知道我不应该在函数中真正打印,我应该有一个返回,但我还没有这样做,因为我的代码还没有真正起作用.

python sorting algorithm bubble-sort

128
推荐指数
5
解决办法
11万
查看次数

标签 统计

algorithm ×1

bubble-sort ×1

python ×1

sorting ×1