码迷,mamicode.com
首页 > 编程语言 > 详细

C++ STL set/multset

时间:2016-08-07 18:32:17      阅读:578      评论:0      收藏:0      [点我收藏+]

标签:

  set容器内的元素会被自动排序,set与map不同,set中的元素即是键值又是实值,set允许两个元素有相同的键值。不能通过set的迭代器去修改set元素,原因是修改元素会破坏set组织。当对容器中的元素进行插入或者删除时,操作之前的所有迭代器在操作之后依然有效。

  multiset特性及用法和set完全相同,唯一的差别在于它允许键值重复。set和multiset的底层实现是红黑树

 

set构造函数
函数 功能
set<T> st set默认构造函数
mulitset<T> mst multiset默认构造函数
set(const set &st) 拷贝构造函数

 

 

 

 

 

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的元素

 

 

 

 

 

 

 

set查找操作
函数 功能
find(key) 查找键key是否存在,若存在,返回该键的元素的迭代器;若不存在,返回set.end()
count(key) 查找键key的元素个数
lower_bound(keyElem) 返回最后一个key<=keyElem元素的迭代器
upper_bound(keyElem) 返回第一个key>keyElem元素的迭代器
equal_range(keyElem) 返回容器中key与keyElem相等的上下限的两个迭代器,这两个迭代器被放在对组(pair)中

C++ STL set/multset

标签:

原文地址:http://www.cnblogs.com/yongqiang/p/5746754.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!