C++STL中封装了许多复杂的数据结构算法和大量的数据结构操作,vector封装了数组,list封装了链表,set和map封装了二叉树等。set是一个不允许重复元的有序容器,用于访问vector和list的项的许多做法也对set适用。
1.set中的操作
iterator begin(); 返回一个适当的迭代器,表示容器中的第一项
iterator begin(); 返回一个适当的迭代器,表示容器中的尾端(终端)标记,即容器中最后一项之后的位置
int size() const;表示当前容器中的元素个数
bool empty();表示当前容器知否为空
void clear();从容器中删除所有元素
pair<iterator,bool> insert(const object &x);iterator表示新插入的项或者插入失败项的当前位置,
bool表示是否插入成功
pair<iterator,bool> insert(iterator hint,const object &x);iterator hint表示插入项给的位置,
int erase(const Object &x);删除x并且返回删除的项数,
iterator erase(iterator itr);删除iterator给定位置上的对象,返回值为已删除项itr后面的元素的位置,
并使itr失效,不能再使用
iterator erase(iterator start,iterator end);删除所有从start开始直到end(不包含end)的项
iterator find(const Object &x) const;返回一个表示该位置的迭代器,若查找失败则返回终端标记。