我不明白第2行的内容是“ -1,0,-1”。为什么需要这样做,零代表什么?
我已经运行了代码,当我删除了“ -1、0,-1”部分时,它没有对列表进行排序。我不明白为什么它是代码中如此重要的部分
def bubbleSort(alist):
for passnum in range(len(alist)-1,0,-1): #line 2
for i in range(passnum):
if alist[i]>alist[i+1]:
temp = alist[i]
alist[i] = alist[i+1]
alist[i+1] = temp
alist = [54,26,93,17,77,31,44,55,20]
bubbleSort(alist)
print(alist)
答案 0 :(得分:3)
与算法无关。 range
有3个参数
在这种情况下,这意味着
答案 1 :(得分:0)
这些是range(start, stop, sep)
(https://docs.python.org/3/library/functions.html#func-range)的参数
在您的情况下,您可以创建一个范围,该范围以列表的-1(len(alist)-1
)的长度开头,并通过采用-1的步骤计数为0。
答案 2 :(得分:0)