set

Posted 惑&葬

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了set相关的知识,希望对你有一定的参考价值。

set集合容器:实现了红黑树的平衡二叉检索树的数据结构,插入元素时,它会自动调整二叉树的排列,把元素放到适当的位置,以保证每个子树根节点键值大于左子树所有节点的键值,小于右子树所有节点的键值;另外,还得保证根节点左子树的高度与右子树高度相等。平衡二叉检索树使用中序遍历算法,检索效率高于vector、deque和list等容器,另外使用中序遍历可将键值按照从小到大遍历出来。
构造set集合主要目的是为了快速检索,不可直接去修改键值。

头文件

#include<set>

操作:

以set<int>a为例

1.插入元素

a.intsert(x)

2.删除元素

a.erase(2);//删除键值为2的元素
a.clear();//清空

3.查找元素

find(),若找到,返回该键值迭代器的位置,否则,返回最后一个元素后面一个位置。
set<int>::iterator it;
it=a.find(5);//查找键值为5的元素
if(it!=a.end())//找到
  cout<<*it<<endl;
else //未找到
cout<<"未找到";

 

以上是关于set的主要内容,如果未能解决你的问题,请参考以下文章

代码片段 - Golang 实现集合操作

spring练习,在Eclipse搭建的Spring开发环境中,使用set注入方式,实现对象的依赖关系,通过ClassPathXmlApplicationContext实体类获取Bean对象(代码片段

pycharm添加Odoo代码片段

详解Android WebView加载html片段

[原创]java WEB学习笔记61:Struts2学习之路--通用标签 property,uri,param,set,push,if-else,itertor,sort,date,a标签等(代码片段

有人可以解释以下 R 代码片段吗? [关闭]