看板 C_and_CPP 關於我們 聯絡資訊
我有一些set 假設 set1 : { 1, 2, 3, 4, 5 } set2 : { 1, 10, 20, 30 } set3 : { 21, 31, 41 } set4 : { 30, 40, 50, 60 } 若一集合與另一集合有相同的項目 則可以合併 故上述例子中,最後要得出 set1 : { 1, 2, 3, 4, 5, 10, 20, 30, 40, 50, 60 } set2 : { 21, 31, 41 } 有什麼比較有效率的方式呢? 現在我的方式是兩個迴圈,讓他比對項目 若有項目可以合併則合併 然後外面在用一個大的while去跑,直到全部都合併完成才結束 不過這樣似乎沒什麼效率@@ 煩請高手指導,感謝:) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.138.152.129
herman602:vector有set可以去跑的樣子 10/22 21:46
suhorng:把 set#x 標記到數字上, 然後一一 union 起來 10/22 21:49
suhorng:標記到數字上可以先排序後二分搜 10/22 21:50