标签:
学习一下rope做一下笔记.....
头文件
#include <ext/rope>
文件头
using namespace __gnu_cxx;
变量声明
rope<Type> x;
成员函数
size() O(1)放心用.
push_back(v) 不解释
push_front(v) .....
insert(p,v) 在位置p插入元素v. 插入后使用x[v]调用. 也就是说insert(0,v)表示在队头插入v,也就是push_front(v).
insert(p,s,v) 在位置p插入s个元素v.插入的第一个元素的下标是p,原来在位置p的元素现在在位置p+s.
append(s,v) 在末尾增加s个元素v. 简直是没用的函数....
erase(p) 删除位置p的元素.
erase(p,s) 从位置p开始(包括位置p)删除s个元素. 没法删满s个元素的话会丢exception.
由于使用平衡树实现,多数函数都是 $O(\log{n})$ 或者 $O(s\log{n})$ 的.
使用方法
1.遍历: for(int i=0;i<x.size();i++) {...}; iterator 似乎不能用......
....
标签:
原文地址:http://www.cnblogs.com/DragoonKiller/p/4600243.html