这个题目,是无意在在CSDN网站上 一位论坛网友发布的题目,感兴趣,就自己写了一种算法
问题2:有两个有序整数集合a和b,写一个函数找出它们的交集?
我的解法:
package com.filename;
import java.util.*;
public class Test {
public static void main(String[] args) {
int[] a = new int[] { 1, 2, 4, 5, 9 };
int[] b = new int[] { 3, 6, 9, 10, 12 };
Set set = null;
set = Test.getResult(a, b);
if (set != null) {
for (Iterator it = set.iterator(); it.hasNext();) {
System.out.print(it.next());
}
} else {
System.out.println("没有交集");
}
}
public static Set getResult(int[] m, int[] n) {
Set set = new HashSet();
Set newSet = new HashSet();
for (int i = 0; i < m.length + n.length; i++) {
if (i < m.length) {
set.add(m[i]);
} else {
if (set.contains(n[i - m.length])) {
newSet.add(n[i - m.length]);
} else {
set.add(n[i - m.length]);
}
}
}
return newSet;
}
}
请大家看一下
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/love_zhangxsh_love/archive/2008/10/18/3094755.aspx
分享到:
相关推荐
17. **方程的解集与集合运算**:第17题中,集合A和B分别是两个方程的解集,通过AB=I来求解集合A和B的并集。 18. **集合的真子集与子集的个数**:第18题中涉及到集合的真子集计数问题,以及当C为实数集时,求使得AB=...
19. **集合的并集、交集和差集**:根据集合的定义,找出它们之间的关系。 20. **集合的幂集元素个数**:给定一个集合,计算其幂集的元素个数。 21. **集合的对称差**:求两个集合的对称差,即属于一个集合但不属于...
6. 分拆集合的概念:集合A的不同分拆是指将A分为两个非空子集A1和A2,满足A=A1∪A2。问题7中,讨论了集合A={1a, 2a, 3a}的不同分拆种数。 7. 集合的包含关系:问题8中,集合M={x|-1≤x和N={x|x≤a},若M∩N≠∅,求...
- 给定一个整数数组,找出两个索引,使得它们之间形成的容器能够容纳最多的水。这是经典的双指针问题。 14. ReverseVowelsofaString - 反转字符串中的元音字母。这是对字符串处理和字符操作的考察。 15. ...
13. **集合交集**:填空题13求集合A与B的交集,A中是有序对,B中的元素满足线性关系,找出它们的共同元素。 14. **函数图像的对称轴**:填空题14涉及偶函数图像的对称性,偶函数图像关于y轴对称,所以y=f(x+1)的...
2. 集合交集的概念:第二题涉及集合的交集M∩N,要求理解集合的元素属性以及交集表示的意义,找出同时满足两个集合条件的元素或有序对。 3. 函数单调性:第三题考查二次函数、一次函数和幂函数的单调性,需要识别...
8. 一个算法具有 5个特性: (1)有穷性 、 (2)确定性 、 (3)可行性 ,有零个或多个输入、有一个或多个输出。 《数据结构 1800题》 9.已知如下程序段 FOR i:= n DOWNTO 1 DO {语句 1} BEGIN x:=x+1;...
- **定义**:如果对于定义域内的任意两个数\(x_1\)和\(x_2\),当\(x_1 )时都有\(f(x_1) \leq f(x_2)\),则称函数\(f(x)\)在定义域内单调增加;若\(f(x_1) \geq f(x_2)\),则称其单调减少。 - **例题解析**:题目1中...
例如,如果我们有两个集合`std::set<int> setA`和`std::set<int> setB`,我们可以通过以下方式获取它们的并集: ```cpp std::set<int> combinedSet; std::set_union(setA.begin(), setA.end(), setB.begin(), setB....
例如,对于一些涉及整数点的问题,可以借助数轴或图像找出所有可能的整数解,如同题目的第四题,通过画出圆x²+y²=3并找出所有的整数点,可以得出A中有9个元素。 此外,当集合与二次函数、一元二次方程或一元二次...
12. **二元函数的性质**:第十二题是关于一个定义在正整数有序对上的二元函数,需要理解其性质并应用它们来求解f(12, 16)的值。 **填空题** 13. **三角函数的和角公式**:题目要求根据sin2α的值求sinα+cosα的值...
15. **函数零点与最值**:最后一个问题涉及函数的零点和最值,需要分析函数的性质,找到使得函数值等于零的a值,以及b的最小值。 这些知识点涵盖了集合论、复数运算、函数性质、数列规律、几何问题、等差数列与等比...
交运算函数找出两个集合共有的元素,而差运算函数返回在第一个集合中存在的但不在第二个集合中的元素。这两个函数都需要在两个集合间进行比较,可能涉及到排序和搜索算法。 程序主界面和具体运算展示部分,描述了...
10. **等势**:两个集合如果存在一个一一对应的函数,就说这两个集合等势,这展示了无穷集合的大小可以比较。 11. **康托尔定理**:实数集的基数大于自然数集的基数,揭示了无穷集合的不同层次。 12. **集合基数**...
- 如果BACR表示集合B并上集合A的补集,而BACR表示集合B和集合A的补集的交集,那么对于集合A={x|3≤x,B={x|2,我们可以求出: BACR=B∪(∁RA)={x|2∪{x|x≤3或x≥7}={x|2 BACR=B∩(∁RA)={x|2∩{x|x≤3或...
7. 双射函数是指在两个集合之间建立一一对应关系的函数,需要检查函数的逆是否也是一一映射。 以上是对离散数学试题中涉及知识点的详细解析,具体答案需要结合每道题目的具体要求和上下文信息来完成。这些知识点是...
例如,在处理大量数据时,快速找出两个列表中的唯一元素或共享元素,集合是高效的选择。 以下是一些示例代码,展示元组和集合的使用: ```python # 创建元组 my_tuple = (1, 2, 3) print(my_tuple[0]) # 输出: 1 ...
- `isdisjoint()`: 判断两个集合是否有交集。如果两个集合没有共同的元素,则返回`True`,否则返回`False`。 - `copy()`: 返回一个新的集合,其内容与原集合相同,属于浅复制。 - `string()`: 此选项不存在于集合...
这道题目要求编写一个函数来判断字符串b的所有字符是否都在字符串a中出现,且出现次数相同。在处理包含汉字的字符串时,需要考虑GBK编码,每个汉字占用两个字节。解决方案可能涉及字符串遍历和计数,注意要考虑字符...
`set_intersection`算法找出两个有序序列的交集,结果同样会被存储在第三个容器中。同样有默认和自定义排序规则两种版本: ```cpp template, class inputIterator2, class outputIterator> outputIterator result = ...