C++求两个集合的交集
建立一个类Intersection求两个整数集合的交集,具体要求如下:
(1)私有数据成员
int set[20];用数组空间set存储集合
int len;表示该集合中元素的个数
(2)公有成员函数
Intersection(int *s,int l);构造函数,用l初始化其长度
Intersection();构造函数,将set的长度初始化为0
int f(int num):判断num是否属于集合,属于返回1,不属于返回0
Intersection operator&&( Intersection t):重载&&,求当前对象集合和参数对象t的集合交集,方法为:使用对象t的集合中的每个元素作为函数f的参数,若该元素属于当前对象的集合,则将其复制给交集
Void show();输出集合
(3)定义两个集合并初始化,求这两个集合的交集
#include<iostream>
#include<stdio.h>
#include<algorithm>
#include<string>
using namespace std;class Intersection
{private:int set[20];int len;
public:Intersection(int* s, int l) {len = l;for (int i = 0; i < 20; i++)set[i] = 0;for (int i = 0; i < l; i++)set[i] = *(s+i);}Intersection(){ len = 0; }int fun(int num);Intersection operator&&(Intersection t){Intersection a;int j = 0;if (len > t.len){for (int i = 0; i < len; i++){if (fun(t.set[j])){a.set[j] = t.set[j];j++;}}}else{for (int i = 0; i < t.len; i++){if (fun(t.set[j])){a.set[j] = t.set[j];j++;}}}a.len = j;return a;}void show();
};int Intersection::fun(int num)
{for (int i = 0; i < len; i++)if (num == set[i])return 1;return 0;
}
void Intersection::show()
{for (int i = 0; i < len; i++)cout << set[i] << " ";cout << endl;
}int main()
{int a[10] = { 2,3,5,7,11,13,17,19,23,29 };int b[5] = { 2,7,13,19,23 };Intersection A(a, 10);Intersection B(b, 5);cout << "集合1的元素是:";for (int i = 0; i < 10; i++)cout << a[i] << " ";cout << endl;cout << "集合2的元素是:";for (int i = 0; i < 5; i++)cout << b[i] << " ";cout << endl;Intersection C;C = A && B;cout << "交集为:";C.show();return 0;
}
C++求两个集合的交集相关推荐
- java集合操作-----求两个集合的交集和并集
java求两个集合的交集和并集 java如何求两个集合的交集和并集呢??其实java的API中已经封装了方法.今天写个简单的例子测试一下:(例子中以java.util.LinkedList为例) 求连 ...
- C/C++ 求两个集合的交集、并集、差集
推荐阅读:Python基础自学实用笔记(总和篇)-By Ryan_3610 1.题目:求两个集合的交集.并集.差集 1.1代码 #include <iostream> #include & ...
- java 时间段求并集,java集合操作-----求两个集合的交集和并集
2019独角兽企业重金招聘Python工程师标准>>> java求两个集合的交集和并集 java如何求两个集合的交集和并集呢??其实java的API中已经封装了方法.今天写个简单的例 ...
- java求两个集合的交集和并集,比较器
求连个集合的交集: import java.util.ArrayList; import java.util.List; public class TestCollection {public sta ...
- java 交集怎么写_Java里面如何求两个集合的交集
在Python里,或许我们没有这个烦恼,因为python里已经为我们提供了intersection这样的方法. 但是在Java里,就需要我们动一番脑筋了.这里浓重推荐下apache的Collectio ...
- 求两个集合的交集和并集
1.排序+双指针 交集: 用两个指针分别指向两个数组的头部.如果其中一个元素比另一个小,后移小的那个数组的指针:如果相等,那么把该元素添加到交集里,同时后移两个数组的指针.一直这样操作下去,直到有一个 ...
- 求两个集合的交集,并集,差集
1. 取交集 (A和B都有) List A : { 1 , 2 , 3 , 5 , 9 } List B : { 4 , 3 , 9 } var intersectedList = list1.In ...
- oracle 求两个集合的交集,Oracle中的Union、Union All、Intersect、Minus差集交集等集合操作详解...
Intersect和Minus的操作和Union基本一致,这里一起总结一下: Union,对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序: Union All,对两个结果集进行并集操作 ...
- c语言求两个字符串的交集,用c语言求两个集合的交集,并集,差集
满意答案 ibox5 2019.05.05 采纳率:54% 等级:11 已帮助:8963人 #include #include #include #define ARR_LEN 255/*数组长 ...
最新文章
- .NET Core IdentityServer4实战 第一章-入门与API添加客户端凭据
- mac的截图在linux下打不开,mac版截图软件Snip详细使用教程及常见问题
- 图像迁移风格保存模型_图像风格迁移也有框架了:使用Python编写,与PyTorch完美兼容,外行也能用...
- 运营商服务器系统,浪潮服务器助力运营商三大支撑系统上云
- A Style-Based Generator Architecture for Generative Adversarial Networks---阅读笔记
- Julia: 趣!,13579分别在一本168页书的页码中出现的次数
- 手机识别图片文字的方法
- 量子十问之二:“爱因斯坦幽灵”能用来实现超光速通信吗?
- React 使用阿里巴巴矢量图标库管理Icon图标的Icon-antd用法
- AT命令的简单介绍和使用
- 数值图形处理软件活图简介
- python 实现图片添加文字水印
- linux mysql stop 报错_mysql linux上安装使用
- java 使用adobe fms流媒体
- 1.2:文本文件的加密
- 华为防火墙笔记-GRE
- 51nod 1770数数字(找规律)
- 先调用finish() 然后startActivity有什么区别?
- 司创电梯发卡软件_防复制电梯IC卡系统上位机管理软件设计
- 对话魏杰:第三次造富时代来了 富翁进入洗牌期 未来十年机会最多