有关列表复杂度的问题
想请教一下为什么python里面的列表的index函数的时间复杂度是O(1)呢 你去看它怎么写的不就好了 你确定你看到的是对的吗?python 中 list各个函数的时间复杂度要看其执行代码
你所说的index好像是list[i]吧?很多地方把直接拿下标索引也称之为index,但这不是index函数,这种方式的时间复杂度是O(1),因为其位置是可以直接得到的,然后就直接获取该元素了。
而list.index()的时间复杂度是O(n),因为它需要遍历一次列表,最坏的情况是一直找到最后一个元素,因此其时间复杂度为O(n) 并不是,你在哪里看到的?list.index() 的时间复杂度是 O(n),不是 O(1),下标访问列表的时间复杂度才是 O(1)
页:
[1]