<强> c++设置的使用方法详解强>
设置也是STL中比较常见的容器这里集合容器实现了红黑树的平衡二叉检索树的数据结构,它会自动调整二叉树的排列,把元素放到适当的位置这里容器所包含的元素的值是唯一的,集合中的元素按一定的顺序排列。
我们构造组集合的目的是为了快速的检索,不可直接去修改键值。
设置的一些常见操作:
-
<李>()开始返回指向第一个元素的迭代器李>
<李> clear()清除所有元素李>
<李> count()返回某个值元素的个数李>
<李>空()如果集合为空,返回真正的(真)李>
<李>结束()返回指向最后一个元素之后的迭代器,不是最后一个元素李>
<李>删除()删除集合中的元素李>
<李> find()返回一个指向被查找到元素的迭代器李>
<李> insert()在集合中插入元素李>
<李> max_size()返回集合能容纳的元素的最大限值李>
<李>大小()集合中元素的数目李>
<李>交换()交换两个集合变量李>
<强>其实组的大部分操作是与向量类似的,不过不设置支持随机访问,必须要使用迭代器去访问。由设置于放入一个元素就会调整这个元素的位置,把它放到合适的位置,所以集合中只有一个插入插入操作。
强>
<强>对于集合来说,我们一般有并集,交集、差集,补集这几种操作,所以在设定的操作中我们也有类似的集合操作,它们都在# include
std:: set_intersection():这个函数是求两个集合的交集。 std:: set_union():求两个集合的并集 std:: set_difference():差集 std:: set_symmetric_difference():得到的结果是第一个迭代器相对于第二个的差集并上第二个相对于第一个的差集 >之前学校橙汁上有一个题可以来进行这几个操作,下面是学校橙汁的题:
<强> 强>
描述集合的运算就是用给定的集合去指定新的集合。设A和B是集合,则它们的并差交补集分别定义如下: ∪B={| x∈∨x∈B} ∩B={| x∈∧x∈B} A - B={| x∈∧x不属于B} SA={| x∈(∪B)∧x不属于一个} 某人={| x∈(∪B)∧x不属于B} >之前<强>输入强>
第一行输入一个正整数T,表示总共有T组测试数据。(T<=200) 然后下面有2 t行,每一行都有n + 1个数字,其中第一个数字是n (0 & lt;=n<=100),表示该行后面还有n个数字输入。 >之前<强>输出强>
对于每组测试数据,首先输出测试数据序号,“案例#。” 接下来输出共7行,每行都是一个集合, 前2行分别输出集合A, B,接下5行来分别输出集合A, B的并(u B)交(n B)、差(A - B),补。 集合中的元素用“{}”扩起来,且元素之间用“,”隔开。 >之前<强>示例输入强>
14 1 2 3 10<强>示例输出强>
例# 1: 一个={1,2,3} B={} 一个u B={1,2,3} 一个n B={} A - B={1,2,3} SA={} 某人={1,2,3} >之前我的代码如下:
# include# include # include # include 使用名称空间性病; 空白打印(set 一) { 如果(a.begin ()==a.end ()) cout & lt; & lt;“}”& lt; & lt;endl; (set a, b, c; ,cin祝辞的在T; 而(T——) { 再+ +; b.clear a.clear (), (), c.clear (); int n; ,cin祝辞的在n; for (int i=0; i c++的设置使用方法详解