Python Selectionsort,不能使用len()

时间:2013-10-02 17:24:16

标签: python sorting built-in

def selectionSort(list1):
   for sixNumbers in range(len(list1) - 1, 0, -1):
       maxPos = 0
       for position in range(1, sixNumbers + 1):
           if list1[position] > list1[maxPos]:
               maxPos = position

       value = list1[sixNumbers]
       list1[sixNumbers] = list1[maxPos]
       list1[maxPos] = value

def main():
    list1 = [45, 7, 5, 24, 12, 1]
    selectionSort(list1)
    print(list1)

main()

我如何不使用len()?我的导师告诉我不要使用内置的排序功能。有什么建议吗?另外,不要给我代码,给我一些提示,所以我可以尝试重写它。

1 个答案:

答案 0 :(得分:0)

在不使用len()的情况下计算元素的一种非常愚蠢的方法是使用for循环遍历值。每次通过循环递增以获得计数。