導航:首頁 > 編程語言 > java交集並集

java交集並集

發布時間:2023-06-10 19:55:14

java 怎麼設計一個set類 然後new兩個set對象 進行交集 並集 求代碼

樓上有誤,你這樣還是用的原始的Set類,而非「設計一個Set」,且交集實現太麻煩了

import java.util.*;
public class MySet<E> extends HashSet<E>{

//求交集
public MySet<E> intersection(MySet<E> set){
MySet<E> newSet=new MySet<E>();
for(Object ob:this){
if(set.contains(ob)){
newSet.add((E) ob);
}
}
return newSet;
}

//求並集
public MySet<E> union(MySet<E> set){
this.addAll(set);
return this;
}
//測試
public static void main(String[] args){
MySet<Integer> set=new MySet<Integer>();
set.add(1);
set.add(2);
set.add(3);

MySet<Integer> set1=new MySet<Integer>();
set1.add(6);
set1.add(4);
set1.add(2);

System.out.println(set.intersection(set1));
}
}

② 如何在JAVA中實現兩個集合的交和並

list1 list2//拿兩個集合舉例
List list3=new ArrayList();
for(int i=0;i<list1.size();i++)
{
for(int j=0;j<list2.size();j++)
{
if(list1.get(i)==list2.get(j)||list.get(i).equals(list2.get(j)))
list3.add(list1.get(i));
break;
}
}//循環後的list3就是交集
List list3=new ArrayList();
for(int i=0;i<list1.size();i++)
{
for(int j=0;j<list2.size();j++)
{
if(list1.get(i)==list2.get(j)||list.get(i).equals(list2.get(j)))
{list3.add(list1.get(i)); continue;}
list3.add(list1.get(i));
list3.add(list2.get(j));
}
}//這個list3就是並集

③ java問題,寫一個程序,其功能是輸入兩組整數,求這兩組數的交集和並集。跟我說思路,不是說演算法,就

並集比較好辦:把兩組整數全部存到一個Set對象內就完了;
交集:就對一個數組中的每個元素循環,判斷其是否在另一個數組中。

④ java求交集和並集

雖然想盡量維持你程序的原型,但是還是改的差不多了。學java注重的是面向對象的思想,建議你不要把太多精力放在這些演算法上面,不能再像學習C語言那樣學習java。

public class Group{
public void jiaoji(int[] a,int[] b){
for(int i=0;i<a.length;i++){
for(int j=0;j<b.length;j++){
if(a[i]==b[j]){
System.out.print(a[i]+",");
}
}
}
}
public void bingji(int[] a,int[] b){
for(int i=0;i<a.length;i++){
System.out.print(a[i]+",");
}
for(int i=0;i<b.length;i++){
boolean flag=true;
for(int j=0;j<a.length;j++){
if(b[i]==a[j]){
flag=false;
}
}
if(flag){
System.out.print(b[i]+",");
}
}
}
public static void main(String[] args){
int a[]={1,2,3,4,5};
int b[]={4,5,6,7,8};
Group group=new Group();
System.out.print("交集為:");
group.jiaoji(a,b);
System.out.print("\n並集為:");
group.bingji(a,b);
}
}

⑤ java學習中,怎麼求交集和並集

publicstaticvoidtest3(){
版Set<String>cc=newHashSet<String>();
cc.add("2");
cc.add("a");
cc.add("b");
cc.add("x");
Set<String>dd=newHashSet<String>();
dd.add("b");
dd.add("1");
dd.add("2");
dd.add("3");
dd.add("a");
Set<String>ff=newHashSet<String>();
ff.addAll(cc);
ff.addAll(dd);
System.out.println(ff.toString());
}

這是權並集

⑥ 用java編寫程序,求集合的並集、交集和差集

publicstaticvoidmain(String[]args){
Integer[]A={1,2,3,4};
Integer[]B={1,3,7,9,11};

List<Integer>listA=Arrays.asList(A);
List<Integer>listB=Arrays.asList(B);

List<Integer>jiaoji=newArrayList<Integer>();
for(Integera:listA){
(listB.contains(a)){
jiaoji.add(a);
}
}
System.out.println(jiaoji);
List<Integer>bingji=newArrayList<Integer>();
for(Integera:listA){
if(!bingji.contains(a)){
bingji.add(a);
}
}
for(Integerb:listB){
if(!bingji.contains(b)){
bingji.add(b);
}
}

System.out.println(bingji);

List<Integer>chaji=newArrayList<Integer>();
for(Integera:listA){
if(!listB.contains(a)){
chaji.add(a);
}
}
System.out.println(chaji);
}

閱讀全文

與java交集並集相關的資料

熱點內容
網路中常用的傳輸介質 瀏覽:518
文件如何使用 瀏覽:322
同步推密碼找回 瀏覽:865
樂高怎麼才能用電腦編程序 瀏覽:65
本機qq文件為什麼找不到 瀏覽:264
安卓qq空間免升級 瀏覽:490
linux如何刪除模塊驅動程序 瀏覽:193
at89c51c程序 瀏覽:329
怎麼創建word大綱文件 瀏覽:622
裊裊朗誦文件生成器 瀏覽:626
1054件文件是多少gb 瀏覽:371
高州禁養區內能養豬多少頭的文件 瀏覽:927
win8ico文件 瀏覽:949
仁和數控怎麼編程 瀏覽:381
項目文件夾圖片 瀏覽:87
怎麼在東芝電視安裝app 瀏覽:954
plc顯示數字怎麼編程 瀏覽:439
如何辨別假網站 瀏覽:711
寬頻用別人的賬號密碼 瀏覽:556
新app如何佔有市場 瀏覽:42

友情鏈接