Arbil
@Arbil

Что я делаю не так?

Здравствуйте, у меня есть задание в массиве нужно поменять местами наибольшей и наименьшей элементы.
Вот то что мне сразу пришло в голову
array = [2,3]
    
array[array.index(min(array))], array[array.index(max(array))] = array[array.index(max(array))], array[array.index(min(array))]

Я не могу понять что я делаю не так, поточу что с массивом [3,2] все работает
Я не прошу ответ на задачу, мне просто интересно почему мой код не работает должным образом
  • Вопрос задан
  • 82 просмотра
Решения вопроса 1
BitNeBolt
@BitNeBolt
Оно не работает тогда, когда индекс макс. элемента больше, индекса мин. элемента. Питон читает такие строчки в каком-то своем порядке (погуглите каком, если интересно) и получается неправильный результат. Создайте для индексов и макс. элементов отдельные переменные. Это и ускорит программу, и повысит читабельность.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы