[VB6 ] 比對2個文字檔

看板Visual_Basic作者 (不好笑啦)時間16年前 (2009/12/21 09:09), 編輯推噓1(109)
留言10則, 4人參與, 最新討論串1/1
我現在有2個文字檔 每行就代表一筆資料 每個檔案有數萬筆或十萬筆以上 如果要比對這2個檔案 要找出所有不重複的資料 然後把重複的資料移掉 有沒有比較有效率的方法 雖然用迴圈去跑就OK了 不過很沒效率 有沒有快一點的方法呢 THANKS -- 我的Facebook: http://0rz.tw/v70Uy 有玩餐城的話可以加我交換食材 (雖然可能已經加過了XD) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.136.49.12 ※ 編輯: NotFunny 來自: 220.136.49.12 (12/21 09:11)

12/21 11:35, , 1F
兩個檔案先排序,然後一個一個比,可以保證不重覆比較。
12/21 11:35, 1F

12/21 11:36, , 2F
time complexity: O(m+n) 你提的迴圈法一般在 O(mn)
12/21 11:36, 2F

12/21 11:39, , 3F
把兩個檔案先排序的動作也要算時間吧?看用哪種排序法..
12/21 11:39, 3F

12/21 13:14, , 4F
這是最簡單的方法啦 比較很簡單 排序也很簡單
12/21 13:14, 4F

12/21 13:15, , 5F
想也知道不要用那種O(n^2)的排序法
12/21 13:15, 5F

12/21 16:00, , 6F
排序最快就n log n嘛,謝謝二位的意見囉,我再研究看看
12/21 16:00, 6F

12/26 13:26, , 7F
是指找出2文字檔的聯集,重複的只取一筆嗎?
12/26 13:26, 7F

12/26 13:27, , 8F
如果是上面這種,把資料存到一個新檔,在資料存入時判斷
12/26 13:27, 8F

12/26 13:27, , 9F
該檔是否已經有資料 這樣不就好了嗎?
12/26 13:27, 9F

12/26 13:31, , 10F
或者更懶一點,把資料都存到資料庫,然後用DISTINCT
12/26 13:31, 10F
文章代碼(AID): #1BBihZRR (Visual_Basic)