作者NotFunny (不好笑啦)
看板Visual_Basic
标题[VB6 ] 比对2个文字档
时间Mon Dec 21 09:09:49 2009
我现在有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)
1F:→ MOONRAKER:两个档案先排序,然後一个一个比,可以保证不重覆比较。 12/21 11:35
2F:→ MOONRAKER:time complexity: O(m+n) 你提的回圈法一般在 O(mn) 12/21 11:36
3F:推 meto000:把两个档案先排序的动作也要算时间吧?看用哪种排序法.. 12/21 11:39
4F:→ MOONRAKER:这是最简单的方法啦 比较很简单 排序也很简单 12/21 13:14
5F:→ MOONRAKER:想也知道不要用那种O(n^2)的排序法 12/21 13:15
6F:→ NotFunny:排序最快就n log n嘛,谢谢二位的意见罗,我再研究看看 12/21 16:00
7F:→ rosemary:是指找出2文字档的联集,重复的只取一笔吗? 12/26 13:26
8F:→ rosemary:如果是上面这种,把资料存到一个新档,在资料存入时判断 12/26 13:27
9F:→ rosemary:该档是否已经有资料 这样不就好了吗? 12/26 13:27
10F:→ rosemary:或者更懒一点,把资料都存到资料库,然後用DISTINCT 12/26 13:31