基于Java编写函数来查找两个数组的交集
发布时间:2023-08-31 20:54:38
在Java中,可以通过使用Set集合来查找两个数组的交集。以下是一个基于Java编写的函数来实现这一功能:
import java.util.HashSet;
import java.util.Set;
public class ArrayIntersection {
public static int[] findIntersection(int[] arr1, int[] arr2) {
// 创建一个Set集合用于存储交集元素
Set<Integer> set = new HashSet<>();
// 遍历arr1数组,将元素添加到set集合中
for (int i = 0; i < arr1.length; i++) {
set.add(arr1[i]);
}
// 创建一个List集合用于存储交集元素
Set<Integer> intersection = new HashSet<>();
// 遍历arr2数组,判断元素是否在set集合中,如果是则添加到intersection集合中
for (int i = 0; i < arr2.length; i++) {
if (set.contains(arr2[i])) {
intersection.add(arr2[i]);
}
}
// 将intersection集合转换为数组
int[] result = new int[intersection.size()];
int index = 0;
for (int num : intersection) {
result[index++] = num;
}
return result;
}
public static void main(String[] args) {
int[] arr1 = {1, 2, 3, 4, 5};
int[] arr2 = {4, 5, 6, 7, 8, 9};
int[] intersection = findIntersection(arr1, arr2);
for (int num : intersection) {
System.out.print(num + " ");
}
// 输出结果:4 5
}
}
上述代码中,我们首先创建一个HashSet集合set,用于存储arr1数组中的元素。然后,我们遍历arr2数组,判断元素是否在set集合中,如果是,则将其添加到另一个HashSet集合intersection中。最后,我们将intersection集合转换为数组并返回。
在main函数中,我们定义了两个数组arr1和arr2,并调用findIntersection函数来查找交集。最后,我们遍历交集数组并输出结果。
运行以上代码,输出结果为4 5,即arr1和arr2数组的交集为4和5。
这是一个基于Java编写的函数来查找两个数组的交集的实现。通过使用Set集合,我们可以高效地查找交集元素。
