03_set slice的时间复杂度

set slice O(n+k)

使用切片赋值来解释set slice的时间复杂度

(1) 对li[0:3]赋值首先会删除1,2,3,空出来的位置被后面的元素依次向前移动填充,由del slice 得时间复杂度是 O(n),得出此时的时间复杂度是O(n),复杂度并不要求准确严格而是使用一种渐进表示的方式。

(2) 这个时候[33,44,55,66,77,88]插入到列表的位置是确定的,每次都插入到列表的开头,没插入一个元素的时间复杂度是O(1),此处有6个元素,所以是O(6)

所以综上set slice 的时间复杂度是O(n+k)

原文地址:https://www.cnblogs.com/summer1019/p/10555443.html