C++,求两个集合求并集的并集,要用动态分配内存

先学会用法吧,具体的以后看C++ Primer

这是求两个集合的并集。

}

能够编译通过,但就是得不到任何结果。我是想得到s=AB与ABC的交集,s=AB与BCD的交集,并且输出在屏幕。
}
针对这里提及的四个集合运算必须特别注意: 

1、第一个算法需保证第一集合和第二集合有序,并从小到大排序,内部使用默认“<”操作符比较元素大小; 

2、第二个算法需保证第一集合和第二集合有序,排序方式参照Compare确定,内部使用Compare比较元素大小。

该函数用于求两个集合的交集,结果集合中包含所有同时属于第一个集合和第二个集合的元素。例如:集合{1,2,3,7,9}和{3,4,5,7}的交集为{3,7}。 函数返回值:结果集合的结束位置的back_insert_iterator(和普通的迭代器不样)。参数:

(第一个集合的开始位置,第一个集合的结束位置,第二个参数的开始位置,第二个参数的结束位置,结果集合的插入迭代器(inserter(result, result.begin()))

对于第二个算法,Compare指定用于比较元素大小的仿函数。 

该函数用于求两个集合的差集,结果集合中包含所有属于第一个集合但不属于第二个集合的元素。例如:集合{1,2,3,7,9}和{3,4,5,7}的差集为{1,2,9}。 该函数用于求两个集合的差集,结果集合中包含所有属于第一个集合但不属于第二个集合的元素。例如:集合{1,2,3,7,9}和{3,4,5,7}的差集为{1,2,9}。  comp);数学上,两个集合的对称差集是只属于其中一个集合,而不属于另一个集合的元素组成的集合。也就是说对称差集是去除同时出现在两个集合中的元素后,两集合其他元素组成的集合。例如:集合{1,2,3,7,9}和{3,4,5,7}的对称差为{1,2,4,5,9}。集合论中的这个运算相当于布尔逻辑中的异或运算。集合A和B的对称差通常表示为AΔB。 

应用举例(以并集为例):

第一类--两个数组求并: 第三类--两个vector之间求并:
注意事项:函数参数的最后一个参数是插入迭代器,是因为这个函数内部有对结果集合的插入过程,必须用到插入函数,若不需要插入就用普通迭代器即可,就提前就把结果集合的内存空间扩大。


若改为c(3)会出现3个元素,最后RE。


此时函数的最后一个参数是普通迭代器,函数的返回值也不再是插入迭代器,也变成了普通迭代器(指向结果集合的最后一个插入元素(非0的))


所以求结果集合的元素个数除了用result.size()以外,也可以用以上程序的方法,不过建议还是用插入迭代器,用result.size()毕竟用普通迭代器的问题范围小,而且不方便(我们可能不想去预知结果集合的大小)。

}
*问题描述:两个合集的交集

   还是运用了多文件组织来实现本项目的运行。

//分配存放线性表的空间 i--; //将顺序表逻辑序号转化为物理序号 i--; //将顺序表逻辑序号转化为物理序号

通过这一小的设计可以看出,当线性表LIST实现以后,可以利用它作为存放集合数据的容器,也可以利用它的基本运算完成更复杂的集合运算,如何求两个集合的并集等等..

}

内容提示:c++程序设计实现集合交集并集差集

文档格式:DOC| 浏览次数:45| 上传日期: 02:39:16| 文档星级:?????

全文阅读已结束,如果下载本文需要使用

该用户还上传了这些文档

}

我要回帖

更多关于 求两个集合的并集 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信