合併有交集的集合

2021-06-09 20:11:23 字數 862 閱讀 4228

題目如下,

給定乙個字串的集合,格式如: 

, ,,, 

要求將其中交集不為空的集合合併,要求合併完成後的集合之間無交集,例如上例應

輸出 ,,  

(1)請描述你解決這個問題的思路; 

(2)請給出主要的處理流程,演算法,以及演算法的複雜度 

(3)請描述可能的改進(改進的方向如效果,效能等等,這是乙個開放問題)。

我查了查網上的解法,只看到乙個(參見我有一點新想法,說明如下:

1. 首先得到所有元素的集合(aaa, bbb, ccc, ddd, eee, fff, ggg, hhh),複雜度o(n),n是所有元素的個數;

2. 為所有集合標記乙個二進位制數,來表示包含哪些集合,得到陣列int bina[5]複雜度o(n^2);

如題,= 1 1 1 0 0 0 0 0,

= 0 1 0 1 0 0 0 0,

= 0 0 0 0 1 1 0 0,

= 0 0 0 0 0 0 1 0,

= 0 0 0 1 0 0 0 1,

3. 然後寫乙個函式,判斷int陣列中的第乙個元素是否與其他元素&操作為空,複雜度為o(m),m是原集合的個數

a. 為空則輸出該元素對應的集合,並刪除第乙個元素,遞迴呼叫本方法;

b. 不為空則與那個元素做或操作合併,刪除那個元素,遞迴呼叫本方法;

c. 如果只剩下乙個元素則輸出其對應的字串;

4. 所有的結合已經得到了。

scala合併有序集合

problem 你想要把兩個集合合併為乙個集合,要麼包含兩集合所有的元素,要麼包含兩個集合的相同元素,要麼包含兩個集合的不同元素。solution 對於這個問題有很多解決方案,用哪種取決於你的需要 使用 方法來合併集合到乙個mutable集合,比如arraybuffer scala val a co...

將多個集合合併成沒有交集的集合

2010 03 20 18 25 給定乙個字串的集合,格式如 要求將其中交集不為空的集合合併,要求合併完成後的集合之間無交集,例如上例應輸出,1 請描述你解決這個問題的思路 2 請給出主要的處理流程,演算法,以及演算法的複雜度 3 請描述可能的改進。解決方案 採用hash的方法,key為字串,val...

合併有資料的列

bom資料排序及分級顯示 示例資料 create table t1 name varchar 20 col1 varchar 2 col2 varchar 2 col3 varchar 2 insert t1 name,col1,col2,col3 select a 1 union all sele...