如何求多个集合的交集?
题目等价于:假设有n个集合A1, A2, A3, ..., An,如何求A1∩A2∩A3∩...∩An。
有三种解法:
1. 按照从左到右的正常优先级依次计算:
先算A1∩A2的值,假设值等于S1,然后再算S1∩A3的值,……依次类推,直到求出Sn-1∩An的值,这个值就是所有集合的交集的结果。
2. 利用交换律和结合律改变优先级来计算:
这n个集合中,存在两个集合先求交集比较容易,那么可以先把它们的交集求出来,假设为S,再看S与剩下的集合中的哪个配对求交集比较容易,……依次类推,直到所有集合都被匹配完,最终值就是所有集合的交集的结果。
3. 递归解法:
其实是上述两种方法的变种,可以将这n个集合求交集看作一个函数f,它的参数是这n个集合,简记为f(n):那么其中n-1个集合的交集可以按照同样的函数求f解出来,只是参数不同——是这n-1个集合,简记为f(n-1),假设这个解是S;那么S与剩下的那个集合求交集就是上述参数是n个集合的函数f的结果。有了这个递归表达式,那么就可以用计算机程序编程来求解了。
集合与交集是什么意思?
集合是由若干元素组成的,而交集也是一个集合,但这个集合是由两个或者两个以上的若干个集合的公共元素组成的集合叫做这些集合的交集,如果把若干个集合的元素合并在一起组成一个新的集合,则这个新的集合叫做这些集合的并集。
集合交集分配律
只有交并集合运算时可以自由结合调换,而交并结合时如3,4中,一定要记住他的核心运算时括号里的,举例3中是A和BC集合并集的交集当然可以理解为A先分别与BC交到来再并起来,懂了吗.再举个实际的A{2,5}∩(B{1,2,7}∪C{7,9})=A{2,5}∩{1,2,7,9}={2}也可以这样算(A{2,5}∩B{1,2,7})∪(A{2,5}∩C{7,9})={2}.