Вірите чи ні, після профілю мого поточного коду повторювана операція реверсії масивного масиву з'їла гігантський шматок часу роботи. Зараз у мене є загальний метод на основі перегляду:
reversed_arr = arr[::-1]
Чи є якийсь інший спосіб зробити це більш ефективно, чи це просто ілюзія моєї одержимості нереалістичним нудотним виконанням?
arrце масивний масив.
f2pyтвій друг! Часто варто написати критичні частини алгоритму (особливо в наукових обчисленнях) іншою мовою і назвати його з python. Удачі!
arr[::-1]: github.com/numpy/numpy/blob/master/numpy/lib/twodim_base.py . Шукати def flipud. Функція - буквально чотири рядки.

arr[::-1]просто повертає перевернутий вигляд. Це так швидко, як ви можете отримати, і не залежить від кількості елементів у масиві, оскільки він просто змінює крок. Це те, що ти реверсуєш, насправді нумерований масив?