#利用嵌套for循环 完成冒泡排序
#拓展:冒泡算法是什么?
L=[4,9,10,5,111,3,244]
答案:
for i in range(0,len(L)-1):
for j in (i,len(L)-2):
if L[j]>L[j+1]:
L[j],L[j+1]=L[j+1],L[j]
print(L)
#利用嵌套for循环 完成冒泡排序
#拓展:冒泡算法是什么?
L=[4,9,10,5,111,3,244]
答案:
for i in range(0,len(L)-1):
for j in (i,len(L)-2):
if L[j]>L[j+1]:
L[j],L[j+1]=L[j+1],L[j]
print(L)
更优解用冒泡算法怎么做不知道,用列表推导式搭配min函数可以做出来,应该跑题了
new_L = [L.pop(L.index(min(L))) for x in range(len(L))]
print(new_L)
实现效果:
for i in range(len(L)):
for j in range(len(L)-1):
if L[j]>L[j+1]:
L[j],L[j+1]=L[j+1],L[j]
print(L)
华华大佬,示例代码是不是有问题?
修改后如下:
def bubble_sort(arr):
for i in range(1, len(arr)): #
for j in range(len(arr) - i):
if arr[j] > arr[j + 1]:
arr[j], arr[j + 1] = arr[j + 1], arr[j]
# print(arr)
return arr
bubble_sort(L)
欢迎来到testingpai.com!
注册 关于