gpt4 book ai didi

python - 使用 Slice 和 __setitem__ 方法进行冒泡排序

转载 作者:行者123 更新时间:2023-12-01 07:26:49 26 4
gpt4 key购买 nike

基于Paul's answer ,我尝试运行以下冒泡排序算法,该算法使用 slice__setitem__ 方法;我确信有一些简单的事情我做得不对,不确定那可能是什么?

代码

def bubblesort(l):
[l.__setitem__(slice(i, i + 2), (l[i:i + 2] if l[i] < l[i + 1] else l[i + 1:i - 1:-1])) for j in range(0, len(l)) for i in range(0, len(l) - 1)]
return l

l = [1,5,-5,0,10,100]
bubblesort(l)
print(l)

期望的输出

[-5, 0, 1, 5, 10, 100]

最佳答案

i == 0时,l[i + 1:i - 1:-1]计算结果为[],所以你结束在迭代中缩短您的列表。

关于python - 使用 Slice 和 __setitem__ 方法进行冒泡排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57402909/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com