java 求三个数组的交集等于第四个数组
a[];b[];c[];a[],b[],c[]的交集等于d[]三个数组的交集等于d[],是一个循环的必要条件。返回ture和false请把代码贴出来,谢谢。...
a[];
b[];
c[];
a[],b[],c[]的交集等于d[]
三个数组的交集等于d[],是一个循环的必要条件。返回ture和false
请把代码贴出来,谢谢。 展开
b[];
c[];
a[],b[],c[]的交集等于d[]
三个数组的交集等于d[],是一个循环的必要条件。返回ture和false
请把代码贴出来,谢谢。 展开
2个回答
展开全部
//求两个数组的交集
public static String[] intersect(String[] arr1, String[] arr2) {
Map<String, Boolean> map = new HashMap<String, Boolean>();
LinkedList<String> list = new LinkedList<String>();
for (String str : arr1) {
if (!map.containsKey(str)) {
map.put(str, Boolean.FALSE);
}
}
for (String str : arr2) {
if (map.containsKey(str)) {
map.put(str, Boolean.TRUE);
}
}
for (Entry<String, Boolean> e : map.entrySet()) {
if (e.getValue().equals(Boolean.TRUE)) {
list.add(e.getKey());
}
}
String[] result = {};
return list.toArray(result);
}
两次 求交集, 再用Arrays.equals比较是否相等
public static String[] intersect(String[] arr1, String[] arr2) {
Map<String, Boolean> map = new HashMap<String, Boolean>();
LinkedList<String> list = new LinkedList<String>();
for (String str : arr1) {
if (!map.containsKey(str)) {
map.put(str, Boolean.FALSE);
}
}
for (String str : arr2) {
if (map.containsKey(str)) {
map.put(str, Boolean.TRUE);
}
}
for (Entry<String, Boolean> e : map.entrySet()) {
if (e.getValue().equals(Boolean.TRUE)) {
list.add(e.getKey());
}
}
String[] result = {};
return list.toArray(result);
}
两次 求交集, 再用Arrays.equals比较是否相等
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询