2013-10-02 3 views
0
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()? Мой инструктор сказал мне не использовать встроенную функцию сортировки. Любое предложение? Кроме того, не дайте мне код, дайте мне несколько советов, поэтому я могу попытаться переписать его.Python Selectionsort, не может использовать len()

+2

'len()' не является встроенной функцией 'sort()'. Вам не разрешено использовать какие-либо встроенные функции? –

+3

'sixNumbers' - очень плохое имя для одного номера. –

+1

@ErikAllik Я переименовал его в i – Singh2013

ответ

0

Настоящий тупой способ подсчета элементов без использования len() заключается в том, чтобы зацикливать значения, используя цикл for. Увеличивайте каждый раз, хотя цикл, чтобы получить счет.

Смежные вопросы