%將每乙個集合放入矩陣的每一行,集合元素個數小於其他集合用零補齊
a=input('請輸入集合的矩陣')
b=size(a,1);%判斷有多少行
[m,n]=size(a);
c=zeros(1,m+n);%建立乙個一維矩陣存放每倆個集合的交集元素
cc=zeros(1,m+n);%存放所有集合的交集
v=0;%為了判斷集合
for i=1:b%外層迴圈從第一行開始,再從第二行開始
for j=(i+1):b%從上乙個開始到結尾
c=[intersect(a(i,:),a(j,:)),c];%將每輛個交集的元素放在乙個集合裡面
endend
for i=1:(m+n)
d=find(c==c(i));
t=length(d);%判斷元素出現的次數是否和輸入的集合次數相當
if(t==b)%如果相等
cc=[cc,c(i)];%把相等的放在一起
if(c(i)==0)%防止初始零元素和交集的零元素衝突
v=1;
endend
endcc=unique(cc);%去除重複元素
if cc==0
disp('無交集')
return
enddisp('集合的交集為')
if v==1
disp(cc)
else
disp(cc(find(cc~=0)))%輸出集合中非零元素
end
求集合交集
求整數集合a與整數集合b的交集。輸入格式 輸入有三行 第一行是a和b的元素個數m和n 第二行是集合a的m個元素 第三行是集合a的n個元素。輸出格式 輸出交集的所有元素 按照在a集合出現的順序輸出,最後乙個輸出後面沒有空格 輸入樣例 在這裡給出一組輸入。例如 3 410 9 2 9 10 8 0 輸出...
求2個集合的交集
文章出處 求2個集合的交集 最簡單 粗暴的迴圈遍歷2個集合,判斷如果有相同的元素就取出來。假設集合1的長度為m,集合2的長度為n,那麼,時間複雜度為 o m n public static list getintersection list list1,listlist2 return list3 ...
求2個集合的交集
求2個集合的交集 最簡單 粗暴的迴圈遍歷2個集合,判斷如果有相同的元素就取出來。假設集合1的長度為m,集合2的長度為n,那麼,時間複雜度為 o m n public static list getintersection list list1,listlist2 return list3 利用has...