Skip to main content
 首页 » 编程设计

python之在 python 中排序列表的算法不能正常工作

2025年05月04日11lautakyan007

<分区>

我正在使用以下函数按升序对列表进行排序。然而,虽然我的函数适用于列表,例如:[1,5,6,9,3] 或 [56,43,16,97,45],它不适用于以下形式的列表:[20,10,1,3,50]。

在这种情况下,计算机似乎认为 3>20 和 3>10 并且 3 在我得到的“已排序”列表中恰好在 50(倒数第二个)之前结束。更准确地说,我得到的结果是:[1,10,20,3,50]。

这是我的代码:

def function_sort(L): 
 
    for j in range(len(L)): 
        min=j 
        for i in range(j+1,len(L)): 
           if L[i]<L[min]: 
              min = i 
 
        if(min != j): 
            L[j],L[min] = L[min],L[j] 
 
            print L 
    return L 

谁能解释一下这是怎么回事?