Форум сайта python.su
Подскажите, пожалуйста,
range(len(support)) и range(len(support[i]))
def counting_sort(sort): #мин/макс значения в списке min_value = min(sort) max_value = max(sort) #создаём последовательность из нулей длинною макс-мин+1 support = [0 for i in range(max_value - min_value +1)] #проходимся по списку А, +1 значения по индексу (элемент списка А-минимальное значение А) во временной переменной с нулями for i in sort: support[i-min_value] +=1 index = 0 # ⬇⬇⬇⬇⬇⬇⬇⬇⬇ВОТ ЭТИ ДВЕ СТРОКИ НЕ ПОНЯТНЫ ⬇⬇⬇⬇⬇⬇⬇⬇⬇ for i in range(len(support)): for k in range(support[i]): sort[index] = i + min_value index += 1 return None a = [-1,-9,0,1,-1] counting_sort(a)
Отредактировано delitet (Май 5, 2022 13:02:41)
Офлайн
delitet
Подскажите, пожалуйста,
range(len(support)) и range(len(support[i]))
#⬇⬇⬇⬇⬇⬇⬇⬇⬇ВОТ ЭТИ ДВЕ СТРОКИ НЕ ПОНЯТНЫ ⬇⬇⬇⬇⬇⬇⬇⬇⬇ for i in range(len(support)): for k in range(support[i]):
range(len(support[i]))
r = range(10) print(r) print(type(r)) print(list(r))
range(0, 10)
<class 'range'>
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Process finished with exit code 0
Отредактировано xam1816 (Май 5, 2022 19:09:51)
Офлайн
Офлайн