Python 的冒泡算法答案

# 利用嵌套 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)
7 回帖
请输入回帖内容 ...
  • 88888888

    华华大佬,示例代码是不是有问题?
    修改后如下:

    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)
    
  • 其他回帖
  • orang_qkbb

    python 代码量足够精炼

  • Chouchiehlun257248

    更优解用冒泡算法怎么做不知道,用列表推导式搭配 min 函数可以做出来,应该跑题了

    new_L = [L.pop(L.index(min(L))) for x in range(len(L))]
    print(new_L)
    

    实现效果:

    image.png

  • liangtongxue
    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)
    
  • 查看更多回帖