C++ STL之set常用指令

本文详细介绍了STL中set容器的使用方法及特点,包括其内部实现原理、基本操作如初始化、查找、插入和删除等,并提供了具体用法示例。

set,关联容器,元素不允许有重复,数据被组织成一棵红黑树,以牺牲插入和删除元素的效率换来了查找元素的高效率(O(logN))。

1、初始化

set<int> st;

2、begin返回第一个元素的迭代器

3、end返回最后一个元素的迭代器

4、clear清空

5、empty判断是否为空,为空返回true

6、count返回某元素的个数

7、find返回某元素的迭代器

8、size返回容器大小

9、erase删除

iterator erase( iterator i ); //删除i位置元素
iterator erase( iterator start, iterator end );
//删除从start开始到end(end为第一个不被删除的值)结束的元素
size_type erase( const key_type &key );
//删除等于key值的所有元素(返回被删除的元素的个数)
//前两个返回第一个不被删除的双向定位器,不存在返回末尾
//第三个返回删除个数

10、insert插入

iterator insert( iterator i, const TYPE &val ); //在迭代器i前插入val
void insert( input_iterator start, input_iterator end );
//将迭代器start开始到end(end不被插入)结束返回内的元素插入到集合中
pair insert( const TYPE &val );
//插入val元素,返回指向该元素的迭代器和一个布尔值来说明val是否成功被插入
//应该注意的是在集合(Sets中不能插入两个相同的元素)

11、lower_bound 返回指向大于(或等于)某值的第一个元素的迭代器

12、upper_bound 返回一个指向大于key值的第一个元素的迭代器

转载于:https://www.cnblogs.com/plumrain/p/stl_set.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值