stl::(8)set容器API

set根据元素键值自动被排序,迭代器不能修改键值,键值唯一不重复。

set 构造函数

set<T> st;              // set默认构造函数
mulitset<T> mst;        // mulitset默认构造函数
set(const set &st);     // set 拷贝构造函数

set 赋值操作

set& operator=(const set &st);   // 重载=
swap(st);                        // 交换连个集合容器

set 大小操作

size(;       // 返回容器中元素个数
empty();       // 判断容器是否为空

set 插入和删除操作

insert(elem);  // 在容器中插入元素
clear();       // 清除所有元素
erase(pos);    // 返回pos迭代器所指的元素,返回下一个元素的迭代器
erase(beg , end);      // 删除区间[beg, end)的所有元素,返回下一个元素的迭代器
erase(elem);           // 删除容器中值为elem的元素

map 查找操作

find(key);               // 查找key是否存在,若存在,返回该元素的迭代器,若不存在,返回set.end()
count(keyElem);          // 返回容器key为keyElem的对组个数,对set来说,要么是0,要么是1。
lower_bound(keyElem);    // 返回第一个key>=keyElem元素的迭代器
upper_bound(keyElem);    // 返回第一个key>keyElem元素的迭代器
equal_range(keyElem);    // 返回容器中key与keyElem相等的上下限的两个迭代器

set定义排序(大到小排序)

class myCompare
{
    
    
public:
  bool operator()(int v1,int v2)
{
    
    
return  v1>v2
}
};
// 使用
int mian()
{
    
    
set<int,myCompare>s;
}

猜你喜欢

转载自blog.csdn.net/qq_40329851/article/details/114379374