STL再放送

1.rope

1.1头文件:对于这个类型,它所属的STL的库是<ext ope>。内部实现可以认为是链表,时间复杂度大概是$O(nsqrt n)$

1.2命名空间,它所属的命名空间是__gnu_cxx。

1.3操作:

rope<int> T; rope<char> S;

T.size() //T中元素的个数

T.push_back(x);//在末尾加入x T.insert(pos,x);//在第pos位置之后添加元素x T.erase(pos,x);//从第pos位置开始删除x个元素 T.copy(pos,len,x);//从pos开始到pos+len为止用x代替 T.replace(pos,x);//从第pos位置开始换成x T.at(x); T[x]//访问第x个元素

注意,这里和vector一样,为了节约内存rope下表从0开始。

原文地址:https://www.cnblogs.com/kamimxr/p/13304276.html