0
我正在尝试编写和优化冒泡排序,但我的代码实际上并没有通过列表排序。关于为什么它提前停止的任何建议?冒泡排序错误
#!/usr/bin/env python
from random import *
import time
def bubble(lst):
counter = 0
n = len(lst)
while n > 0:
temp = 0
for i in range(1, n - 1):
if lst[i] > lst[i + 1]:
lst[i], lst[i + 1] = lst[i + 1], lst[i] # swap
temp = i
counter += 1 # to compare the speed to the
# unoptimized bubble sort
n = temp
return counter
def main():
lst = range(10)
shuffle(lst)
print lst
start = time.time()
counter = bubble(lst)
print lst
end = time.time()
print counter
print "time", end - start
main()
这是家庭作业? – crashmstr
用于python中的气泡排序的[google搜索](http://www.google.com.ph/search?q=bubble+sort+python)就足够了:-) – OnesimusUnbound