Я вижу много вопросов о сложности встроенных методов Python во время выполнения, и есть много ответов для многих методов (например, https://wiki.python.org/moin/TimeComplexity, https://www.ics.uci.edu/~pattis/ICS-33/лекции/complexitypython.txt , Стоимость функции len() и т. д.)
Что-то я не вижу ничего, что адреса перечислять. Я знаю, что он возвращает по крайней мере один новый массив (индексы), но сколько времени потребуется для его создания, и является ли другой массив исходным массивом?
Другими словами, я предполагаю, что это O (n) для создания нового массива (итерации) и O (1) для повторного использования исходного массива... всего O (n) (я думаю). Является ли другой O (n) для копии, делающей это O (n ^ 2), или что-то еще...?
enumerate
возвращает объект перечисления, который является объектом итератора, а не списком, поэтому его сложность будет зависеть от того, как он используется. - person martineau   schedule 30.06.2015list.enumerate
. Существует встроенная функцияenumerate()
, которая работает с произвольными итерируемыми объектами. - person jfs   schedule 01.07.2015