我不明白第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)
这与算法无关。 range
有3个论点
在这种情况下,这意味着
这些是range(start, stop, sep)
(https://docs.python.org/3/library/functions.html#func-range)的参数在你的情况下,你创建一个以列表长度-1(len(alist)-1
)开头的范围,并通过采取-1的步数计数到0。