已知集合a與集合b,且第個集合內資料是唯一的。求a,b集合合併成新的集合c,要求c集合內的資料也是唯一的。並指出c集合的個數。
輸入三行,第一行分別為集合a,b的個數
第二行為a集合的資料
第三行為b集合的資料
輸出兩行
第一行集合c的個數
第二行為c集合的資料
樣例輸入
4 512 34 56 78
34 67 89 34 76
樣例輸出
712 34 56 78 67 89 76
解題思想:
已知集合a,b,求集合c(集合中不存在相同的元素),先用單鏈表儲存集合a,然後在將集合b中不同於a集合中的元素插入到其中即可;
#include
#define max 105
using
namespace std;
struct node
;class
line
;line::
line()
line::
line
(int c,
int n)
r->next=
nullptr;}
void line::
inset
(int x)
if(p-
>next==
nullptr)}
void line::
println()
cout<}int line::
get_l()
return l;
}int
main()
for(i=
0;i) line one
;for
(i=0
;i) one.
inset
(b[i]);
cout
println()
;return0;
}
性質:屬於單鏈表的構成,以及插入資料,和輸出資料的運用; 非遞減有序集合合併
描述 巳知線性表la和線性表lb中的資料元素按值非遞減有序排列,現要求將la和lb歸併為乙個新的線性表lc,且lc中的元素仍按值非遞減有序排列。輸入 三行,第一行a,b集合的個數n,m 第二行 集合a的資料 第三行 集合b的資料。輸出 二行,第一行,集合c的個數k 第二行 集合c的資料。用鍊錶怎麼進...
將多個集合合併成沒有交集的集合
2010 03 20 18 25 給定乙個字串的集合,格式如 要求將其中交集不為空的集合合併,要求合併完成後的集合之間無交集,例如上例應輸出,1 請描述你解決這個問題的思路 2 請給出主要的處理流程,演算法,以及演算法的複雜度 3 請描述可能的改進。解決方案 採用hash的方法,key為字串,val...
DB2兩個遞迴集合合併
一般用with可以連線兩個集合,但是遞迴有所不同,通常我們會改寫成如下的錯誤 with report id,org name,org level,parent org,description as select id,org name,org level,parent org,description...