我有两个Node
Node set1;
Node set2;
set1 = {'a','b','d','1'};
set2 = {'1','c','d'};
我需要找到这两组的联合和交集。所以他们应该看起来像这个
union = {'a','b','c','d','1'};
intersection = {'1','d'};
我正在努力避免使用数组。我可以像这样迭代我的节点
while(set1.hasNext){
char ob = set1.next;
}
我还制作了一个给出集合长度的方法。 set1.length();
在我真正的实现集中是巨大的,他们不是所有的char。有一些泛型类型,它们都在Node链表中作为对象。所以我试图避免使用数组。请帮助!!!
答案 0 :(得分:0)
您是否尝试过使用java集合框架中的Set
?用HashSet
实现?对于Union你可以做一个addAll
来做联盟。对于交集,您可以遍历较小的集合,并查看每个元素的较大集合contains
。对于两个集合中的每个元素,您可以将其添加到交集。