常见函数的时间复杂度

时间:2019-06-12
本文章向大家介绍常见函数的时间复杂度,主要包括常见函数的时间复杂度使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
【list】的内置函数时间复杂度
方法复杂度简介
index[x] O(1) 索引
index assignment O(1) 索引赋值
append O(1) 尾部追加
pop() O(1) 尾部弹出
pop(i) O(n) 指定位置弹出 n列表长度, 最坏时间复杂度
insert(i, item) O(n) 指定位置添加
del operator O(n) 删除, 代表一个一个元素去清空
iteration O(n) 迭代
contains(in) O(n) 看谁是否在列表中, 需要遍历
get slice[x:y] O(k) 取切片, 从x取到y, 一次定位到x, 然后取到y ,x和y之间有多少就是k
del slice O(n) 删除切片 删除位置之后, 后面的元素都需要往前移动
set slice O(k) 设置切片, li[0:3] = [1, 2, 3, 4]k是补充的东西数量
reverse O(n) 置返
concatenate O(k) 代表使用的+, 把两个列表加到一起, k是第二个列表中的元素
sort O(nlogn) 排序
multiply O(nk) 相乘 li=[1, 2] -> n li * 10 -> k

【dict】 的内置函数时间复杂度
方法复杂度简介
copy O(n) 复制
get item O(1)
set item O(1) 设置
delete item O(1) 删除键
contains(in) O(1) 包含
iteration O(n) 迭代



原文地址:https://www.cnblogs.com/zhongmin/p/11011089.html